stack = list()
stack = [[u'hello','world'],[u'blue','sky']]
Как напечатать «привет мир» отдельно и «голубое небо» отдельно в питона?печати вложен список в Python
stack = list()
stack = [[u'hello','world'],[u'blue','sky']]
Как напечатать «привет мир» отдельно и «голубое небо» отдельно в питона?печати вложен список в Python
Попробуйте так:
print stack[0][0]+' '+stack[0][1]
Подробнее: Рассмотрите этот кусок кода таким образом, я печатаю определенный объект (ОК, это объект юникода) в сочетании с 3 частями, первая часть - это объект из объекта списка, а объект списка - из стека (который также объект списка). Это выглядит так: list (stack) -> list (stack [0]) -> unicode (u'hello ') Вторая часть - это строковый объект:' '(пробел) Третья часть похожа на первая часть, list (stack) -> list (stack [0]) -> str ('world') Положите эти 3 части вместе - результат, который вы видели.
Предлагаю вам подумать о том, какие типы ВЕЩЕЙ вы используете. Потому что для всего в python, если вы знаете его тип, вы, скорее всего, будете знать, какие встроенные функции/методы/операторы вы можете использовать. Это может быть здорово!
И еще одно, я печатаю объект unicode вместе с 2 str объектами.
Идея состоит в том, чтобы преобразовать каждый список в строку на str.join()
перед печатью.
>>> stack = [[u'hello', 'world'], [u'blue','sky']]
>>> print '\n'.join(' '.join(s) for s in stack)
hello world
blue sky
Использование петли:
>>> stack = [[u'hello', 'world'], [u'blue','sky']]
>>> for s in stack:
... print ' '.join(s)
...
hello world
blue sky
Если вы хотите изменить список:
>>> stack = [[u'hello', 'world'], [u'blue','sky']]
>>> stack = [ ' '.join(s) for s in stack ]
>>> print '\n'.join(s for s in stack)
hello world
blue sky
@jOSe Я отредактирую свой ответ через некоторое время. – raymelfrancisco
@raymelfransisco :) – jOSe
print "\n".join(map(lambda l: " ".join(map(str, l)), stack))
Используйте pprint, это будет работать для любого размера и вложенности массива.
>>> import pprint
>>> stack = list()
>>> stack = [[u'hello','world'],[u'blue','sky']]
>>> pprint.pprint(stack)
[[u'hello', 'world'], [u'blue', 'sky']]
>>>
В частности использовать этот
for s in stack:
print ' '.join(s)
Я тоже хотел, чтобы мой ответ совместно с цикл, и если условие
if len(stackf) > 0:
for i in range(len(stackf)):
print stackf[i][0]
print stackf[i][1]
https://docs.python.org/2/tutorial /introduction.html#lists – Rishav