Как добиться многострочной печати с помощью print () внутри пользовательской функции? - PullRequest
0 голосов
/ 28 мая 2020

МОЙ КОД

def SimplePrint():
    print("""LINE 1
    LINE 2
    LINE 3""")


SimplePrint()

ВЫХОД

LINE 1
    LINE 2
    LINE 3

ЖЕЛАТЕЛЬНЫЙ ВЫХОД

LINE 1
LINE 2
LINE 3

Это работает, когда я вношу следующие изменения в свой код:

def SimplePrint():
    print("""LINE 1
LINE 2
LINE 3""")


SimplePrint()

Однако это нарушает отступы.
Мне было интересно, есть ли другой способ сделать это.

1 Ответ

1 голос
/ 28 мая 2020

Большая часть IDE добавляет отступ, когда вы нажимаете Enter, но ваша python многострочная строка (то есть тройная кавычка), которая представляет собой одну единственную строку, обрабатывает отступ, добавленный IDE, как часть своего буквального поведения.

Поймите это таким образом IDE добавляет пробел или табуляцию автоматически, но интерпретатор python обрабатывает этот отступ как пробел или табуляцию из-за многострочной строки .

           print("""this is demo
<space/tab>behavior of multi line string""")

Решение : Просто избегайте отступа, автоматически добавленного IDE.

           print("""this is happy demo
behavior of multi line string""")
...