Как убрать переход на новую строку python
Перейти к содержимому

Как убрать переход на новую строку python

  • автор:

Ввод-вывод, оператор присваивания, арифметические операции

Данный курс будет посвящен изучению программирования с использованием языка Python. Это — современный язык программирования, работающий на всех распространных операционных системах.

В настоящее время существует две версии языка Python: более старая, но пока ещё более распространненая версия 2 и современная версия 3. Они не вполне совместимы друг с другом: программа, написанная для одной версии языка может оказаться невыполнимой для другой версии. Но в основном обе версии очень похожи.

Мы будем использовать версию 3 данного языка, некоторые из используемых примеров не будут работать с версией 2. Последняя версия языка, доступная в сентябре 2010 года — 3.1.2, именно её необходимо установить дома, скачав данную версию с сайта www.python.org.

Запустить интерпретатор python можно из командной строки:

$ python3

Будьте внимательны — команда python запустит интерпретатор версии 2, с которым мы работать не будем. В системе Windows можно использовать пункт меню “Python (command line)”

Вы увидите примерно следующее приглашение командной строки:

Python 3.1.2 (r312:79147, Jun 12 2010, 15:29:06) 
[GCC 4.4.3 20100316 (ALT Linux 4.4.3-alt2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

Смело вводите команды и наслаждайтесь результатом. А что можно вводить? Несколько примеров:

>>> 2 + 2
4
>>> 2 ** 100
1267650600228229401496703205376
>>> 'Hello' + 'World'
'HelloWorld'
>>> 'ABC' * 100
'ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC'

Первая команда вычисляет сумму двух чисел, вторая команда вычисляет 2 в степени 100, третья команда выполняет операцию конкатенации для строк, а четвертая команда печатает строку ‘ABC’, повторенную 100 раз.

Хотите закончить работу с питоном? Введите команду exit() (именно так, со скобочками, так как это — функция), или нажмите Ctrl+D.

Как убрать перенос строки после функции input в Python 3

Так прямо не получится, потому что этот перенос — результат действия не функции input, а результат нажатия на Enter.
Вообще функция input предназначена для работы с консолью, а консоль так устроена, что input будет делать только так, а не иначе. Если хочешь вводить по-другому — то вот тут есть пример ввода одного символа без «эха» для нескольких ОС (да, это уже зависит от ОС). Но из него еще надо слепить свой аналог input(). А вообще, если тебе нужно что-то большее, чем консоль — не пользуйся консолью. Библиотек для графического интерфейса больше, чем достаточно.

Денчик ДенУченик (133) 7 лет назад

Спасибо за хороший ответ, а Питон я только изучаю, и до граф. интерфейса мне еще далеко 🙂

Похожие вопросы

Как удалить разделитель между словами при переходе на новую строку?

617a847bc20c3319112142.jpeg

проблема именно убрать точку, если слова переносятся на новую строку.

let anotherInfo = info .compactMap < $0 >.filter < !$0.isEmpty >.joined(separator: " · ") .with(color: .okkoLightWhiteText) let result = NSMutableAttributedString() if rating.length > 0 < result += rating result += value.displayInfo.rating.count >= 3 ? "\n" : " " > result += anotherInfo return .init(text: result, style: .regularText, numberOfLines: 0)

моя идея была сделать

if anotherInfo.length.words > n < . >print("\(anotherInfo)")

но anotherInfo — одна строка, составленная из слов из массива строк — info.
не соображу как убрать тогда разделение. Точка по центру как вылазит вначале новой строки или в конце предыдущей. Мб можно создать некое правило?

  • Вопрос задан более двух лет назад
  • 224 просмотра

Комментировать
Решения вопроса 1

briahas

ObjC, Swift, Python

А вы испробуйте свое приложение на девайсе с другим разрешением экрана. У вас перенос окажется на другом месте.
Вывод — считать ширину букв, ширину элемента, кол-во букв влазящих в одну строчку, и удалять точку которая не нужна.

. либо — сразу делить текст на две строки, конкатенируя их затем через знак переноса строки.

Ответ написан более двух лет назад
Нравится 1 6 комментариев
Глеб @shevzoom Автор вопроса

на данный момент я сделал неразрывный пробел для точки, чтобы строка нормально переносилась.
А чтобы точка не могла стоять в конце добавил

if result.string.last == "·"

не знаю насколько это хорошо или плохо

briahas

так как вы сам себе заказчик — то ни кто лучше вас не знает «хорошо это или плохо». ¯\_(ツ)_/¯
Глеб @shevzoom Автор вопроса

briahas, идея оказалась плохой 🙁
он тогда переносит части слов неправильно.

Хочу попробовать сделать как вы сказали, но немного не понял идеи — считать ширину букв?
он же может сделать перенос получается как:

str1 · str2
str1 · str2

briahas

Смотрите, у меня нет четкого ответа на ваш вопрос. У меня лишь есть направления в которых надо двигаться.

— как я уже говорил, считать ширину слов и дальше продумывать и писать логику разбиения (самому придумывать и продумывать)
— если у вас СвифтЮАй, то можно попытаться еще такой подход (понятия не имею сработает ли он) — заменить объект в котором выводится эта ваша строка, на несколько объектов, в которых будут выводиться закрепленные за этими объектами части вашей строки(рейтинг + год, кол-во сезонов, тип, страна + возрастной ценз. — комбинируйте их как хотите). А уже СвифтЮАю вы должны задать правила (я хз как) про то что две строки и те объекты что не влазят в первую переносятся на вторую.

Python: удалить переносы строк и лишние пробелы из строки?

Всем привет. Подскажите плз, как решить задачу с минимальным изобретанием велосипедов. Нужно очистить строку от символов переноса (заменить на пробелы) и убрать лишние пробелы и пустые строки.

Сейчас это делается вот так:

‘ ‘.join(filter(None, map(unicode.strip, input_string.splitlines())))

Может есть более стандартный способ?

Попытки привлечь либу textwrap приводят только к раздутию кода… Может, я не умею ее готовить?

  • Вопрос задан более трёх лет назад
  • 96520 просмотров

Комментировать
Решения вопроса 1

Регуляркой:
import re
mystr = » balabla\n zzz »
re.sub(«^\s+|\n|\r|\s+$», », mystr)

В этом примере удаляем пробелы в начале и конце строки и символы переноса строки. Отредактируйте под свои нужды.

Ответ написан более трёх лет назад
Нравится 9 3 комментария
Fak3 @Fak3 Автор вопроса
Спасибо за наводку!
Задача решается так:
re.sub(«\s*\n\s*», ‘ ‘, s.strip())
re.sub(«\s+», » «, s)

все норм, только вот так:
import re
mystr = » balabla\n zzz »
mystr = re.sub(«^\s+|\n|\r|\s+$», », mystr)
PS Спасибо за способ, помогло

Ответы на вопрос 4

' '.join(s.split())

не подойдёт?
Ответ написан более трёх лет назад
Нравится 5 1 комментарий

Правда при этом не только переносы и пробелы будут обработаны, но вообще все пробельные символы (табы например). Но в обычных юзкейсах это именно то что нужно.

php программист
Регулярка \s+ отличный способ =)
Ответ написан более трёх лет назад
Нравится 1 3 комментария
Fak3 @Fak3 Автор вопроса
Что-то мне фантазии не хватает, как это регуляркой решить. Поподробней можно?
Рустам Сафин @snegovikufa

Подозреваю через re.match (вроде?) создаешь список кандидатов на замену, а затем применяешь your_string.replace(what_from, what_to)

Fak3 @Fak3 Автор вопроса
А как регуляркой найти список кандидатов на замену?

__author__ = 'dikkini@gmail.com' from itertools import groupby def lines_filter(iterable): """ input: any iterable output: generator or list """ wait_chr = False is_begin = True #======================================================================================================== # You can delete "groupby" and the result will not change, but will increase the length of the input list. #======================================================================================================== for item, i in groupby(iterable): if item: is_begin = False if wait_chr: wait_chr = False yield '' yield item elif not is_begin and not wait_chr: wait_chr = True if __name__ == '__main__': list1 =['','','','i','hgf', '','','','9876','','','7','','9','','',''] # Input list print [i for i in lines_filter(list1)] # Output to the list 

Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
string.rstrip()
или
string = string.replace(«\n»,»»)
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

python

  • Python

Как запустить скрипт на Python по расписанию с csv?

  • 1 подписчик
  • 36 минут назад
  • 6 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *