В консоли Python, когда я печатаю:
>>> "\n".join(['I', 'would', 'expect', 'multiple', 'lines'])
Дает:
'I\nwould\nexpect\nmultiple\nlines'
Хотя я ожидал увидеть такой результат:
I
would
expect
multiple
lines
Что мне здесь не хватает?
Консоль печатает представление, а не саму строку.
Если вы поставите префикс с print
, вы получите то, что ожидаете.
См. Этот вопрос для получения подробной информации о разнице между строкой и строковым представлением. Сверхупрощенное представление - это то, что нужно ввести в исходный код, чтобы получить эту строку.
Вы забыли print
результат. То , что вы получите это P
в , RE(P)L
а не фактический результат печати.
В Py2.x у вас должно получиться что-то вроде
>>> print "\n".join(['I', 'would', 'expect', 'multiple', 'lines'])
I
would
expect
multiple
lines
а в Py3.X печать - это функция, поэтому вам следует сделать
print("\n".join(['I', 'would', 'expect', 'multiple', 'lines']))
Это был краткий ответ. Ваш интерпретатор Python, который на самом деле является REPL, всегда отображает представление строки, а не фактический вывод. Представление - это то, что вы получите с repr
заявлением
>>> print repr("\n".join(['I', 'would', 'expect', 'multiple', 'lines']))
'I\nwould\nexpect\nmultiple\nlines'
Вам нужно print
получить этот результат.
Ты должен сделать
>>> x = "\n".join(['I', 'would', 'expect', 'multiple', 'lines'])
>>> x # this is the value, returned by the join() function
'I\nwould\nexpect\nmultiple\nlines'
>>> print x # this prints your string (the type of output you want)
I
would
expect
multiple
lines
Вы должны его распечатать:
In [22]: "\n".join(['I', 'would', 'expect', 'multiple', 'lines'])
Out[22]: 'I\nwould\nexpect\nmultiple\nlines'
In [23]: print "\n".join(['I', 'would', 'expect', 'multiple', 'lines'])
I
would
expect
multiple
lines
Когда вы распечатаете это, print 'I\nwould\nexpect\nmultiple\nlines'
вы получите:
I
would
expect
multiple
lines
Это \n
символ новой строки, специально используемый для обозначения КОНЕЦ ТЕКСТА. Это означает конец строки или текста. Эти характеристики характерны для многих языков, таких как C, C ++ и т. Д.