Ответ 1
Вы можете join
строки с новой строкой и напечатать результирующую строку:
print "\n".join(op)
Я новичок в python и имею простой массив:
op = ['Hello', 'Good Morning', 'Good Evening', 'Good Night', 'Bye']
Когда я использую pprint, я получаю этот вывод:
['Hello', 'Good Morning', 'Good Evening', 'Good Night', 'Bye']
В любом случае я могу удалить кавычки, запятые и скобки и распечатать на отдельной строке. Чтобы результат был таким:
Hello
Good Morning
Good Evening
Good Night
Bye
Вы можете join
строки с новой строкой и напечатать результирующую строку:
print "\n".join(op)
Вы, кажется, смущены. Позвольте мне помочь вам прояснить некоторые вещи в вашем уме =)
list
, а не массив. Разница в том, что список является гораздо более динамичной и гибкой структурой данных (в списке в динамических языках, таких как python). Например, вы можете иметь несколько объектов разных типов (например, 2 string
s, 3 int
s, один socket
и т.д.)string
.print op
(или print(op)
в этом случае в python 3+), вы по существу просите python показать вам печатное представление этого конкретного объекта списка и его содержимого. Следовательно, цитаты, запятые, скобки и т.д.for each
, пригодный для повторения итерации содержимого повторяющихся объектов, например list
. Просто сделайте следующее: for greeting in op:
print greeting
Распечатайте строку за строкой
for word in op:
print word
Это имеет то преимущество, что если op
оказывается массово длинным, вам не нужно создавать новую временную строку исключительно для печати.
Для Python 3 мы также можем использовать распаковку списка
https://docs.python.org/3.7/tutorial/controlflow.html#unpacking-argument-lists
print(*op, sep='\n')
Это то же самое, что и
print('Hello', 'Good Morning', 'Good Evening', 'Good Night', 'Bye', sep='\n')