Я тоже пытаюсь использовать текст песни в качестве пользовательского ввода, и после каждого куплета появляется новая строка. Python распознает новую строку как «ENTER» и будет иметь дело только с первым стихом. Как я могу ввести текст дырки в один ввод с разрывами строк?

user_input = input('Input song lyrics: ')

Ввод: Нам не привыкать любить Вы знаете правила, и я тоже. Я думаю о полном обязательстве. Вы не получите этого ни от одного другого парня.

print (user_input)

Вывод: Нам не привыкать любить

0
João Luca Mendes 10 Фев 2021 в 15:52

2 ответа

Лучший ответ

Основываясь на этой ссылке, вы не сможете легко получить многострочный ввод и решение может быть следующим:

print('Input song lyrics: ')

x =  input() 
inp = []
while x != '':  
    inp.append(x) 
    x = input()
print(inp)

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

0
Hassan 10 Фев 2021 в 13:01

При записи во ввод вместо нажатия клавиши ввода пишите \n. Это признак того, что Python понимает это как перевод строки.

Примере:

"We're no strangers to love \nYou know the rules and so do I \nA full commitment's what I'm thinking of \nYou wouldn't get this from any other guy"

Не беспокойтесь о том, что между \ n и следующим символом нет пробела, python интерпретирует \ n как вздох, чтобы перейти на новую строку, а затем начать со следующего слова. Вы даже можете удалить пробел перед \ n, так как это устранит пробел в конце каждой строки или, в вашем случае, стиха.

0
CoderNameIsMartin 10 Фев 2021 в 13:02