Как перевести многострочный текст с отступами в однострочный в Python?

У меня такая проблема я пытаюсь перевести строчку введённую через input() к примеру:

заказ
пицца
суши

перевести в:
"заказ пицца суши", либо "заказпиццасуши".

Я пробовал сделать так:

text = ""
while True:
    x = input()
    if x:
       text += x + ""
    else:
        break

но он выдаёт только "заказ".

Как это сделать?


Ответы (2 шт):

Автор решения: MarianD

Для Питонa 3.8+ вы можете использовать оператор :=:

text = ""

while part := input():
    text += part

Этот код предполагает, что после ввода всех частей нажимете еще раз клавиш Enter.


Обьяснение:

  • Выражение

    part := input()
    

    имеет то же самое значение, как выражение направо от оператора :=, т.е. то же самое, как выражение input().

  • Выражение input() - это введенная строка.

  • Дла вычисления логического значения выражения в цикле while пустая строка имеет значение False, непустая True. Значит, цикл окночится вводом пустой строки.

→ Ссылка
Автор решения: anonimus

Можно было сделать через графический интерфейс PyQt5 используя метод QLineEdit() - тогда введённый текст будет считаться в одну строчку.

→ Ссылка