Как перенести строку в функции input, которая находится в цикле while, без отступов?
import sys
while True:
Warning = input('Если вы хотите заархивировать файлы не находящиеся\
в главном каталоге, \nвведите полные пути этих файлов как аргумент\
для командной строки,\nчерез пробел, перед запуском программы. \
\n\nПродолжить архивацию: -\nВыйти из программы: +\
\nВведите команду: ')
if Warning == str('+'):
sys.exit
elif Warning == str('-'):
break
Проблема в том, что после того как я ставлю \ и переношу строку, появляются очень большие пробелы между словами, как это решить?
Ответы (3 шт):
Автор решения: Zhihar
→ Ссылка
проблема вашего текста - при переносе текста на новую строку лишние пробелы в начале поставились, их можно удалить с помощью регулярного выражения
re.sub(' +', ' ', text)
т.е. заменить несколько пробелов в тексте на 1 пробел
import sys
import re
while True:
Warning = input(re.sub(' +', ' ', 'Если вы хотите заархивировать файлы не находящиеся\
в главном каталоге, \nвведите полные пути этих файлов как аргумент\
для командной строки,\nчерез пробел, перед запуском программы. \
\n\nПродолжить архивацию: -\nВыйти из программы: +\
\nВведите команду: '))
if Warning == str('+'):
sys.exit
elif Warning == str('-'):
break
кроме того ничего плохого в переносе без отступов нет, правда не очень красиво, но код то работает, тогда и лишних пробелов не появляется
import sys
while True:
Warning = input('Если вы хотите заархивировать файлы не находящиеся\
в главном каталоге, \nвведите полные пути этих файлов как аргумент\
для командной строки,\nчерез пробел, перед запуском программы. \
\n\nПродолжить архивацию: -\nВыйти из программы: +\
\nВведите команду: ')
if Warning == str('+'):
sys.exit
elif Warning == str('-'):
break
Автор решения: gil9red
→ Ссылка
Попробуйте так:
while True:
Warning = input(
'Если вы хотите заархивировать файлы не находящиеся'
'в главном каталоге, \nвведите полные пути этих файлов как аргумент'
'для командной строки,\nчерез пробел, перед запуском программы. '
'\n\nПродолжить архивацию: -\nВыйти из программы: +'
'\nВведите команду: '
)
Автор решения: Алексей
→ Ссылка
Не переносите текст табуляцией.
import sys
while True:
Warning = input("Если вы хотите заархивировать файлы не находящиеся\
в главном каталоге, \nвведите полные пути этих файлов как аргумент\
для командной строки,\nчерез пробел, перед запуском программы. \
\n\nПродолжить архивацию: -\nВыйти из программы: +\
\nВведите команду: ")
if Warning == str('+'):
sys.exit
elif Warning == str('-'):
break
