2016-12-21 9 views
0

Существует два типа списка в Python, [[x], [y], [z]] и [x, y, z]. По крайней мере, в переменном explorer оба указаны как «список».Разница между [[x], [y], [z]] и [x, y, z]

В чем разница? Могу ли я работать с ними вместе? Как я могу перенести один на другой, чтобы фактически работать с ними вместе?

+4

... что? Да, это оба списка. Один из них - список, содержащий списки, другой - нет. Или, может быть, это зависит от того, что 'x',' y' и 'z'. Там * не * * «два типа списка в Python» *, и совсем не ясно, что дало вам идею о том, что есть. – jonrsharpe

+0

Нет двух типов списка. Существует «список», который является объектом, который может содержать что угодно. Таким образом, список может содержать числа или другие списки, которые могут содержать другие списки. – Delgan

+1

ах, я вижу. Listception. –

ответ

4

[[x],[y],[z]] является список списков тогда [x, y, z] просто список.

Для того, чтобы преобразовать их, вы можете использовать списковых как:

# convert list -> list of lists 
>>> my_list = [1, 2, 3] 
>>> [[i] for i in my_list] 
[[1], [2], [3]] 

# convert list of lists -> list 
>>> my_list_of_lists = [[1], [2], [3]] 
>>> [j for i in my_list_of_lists for j in i] 
[1, 2, 3] 
+1

Спасибо всем за быстрые и точные ответы. Новичок ценит их. –

+0

@FloridaMan Если этот ответ вам помог, пожалуйста, следуйте этому руководству для следующих шагов: http://stackoverflow.com/help/someone-answers – SethMMorton

+0

Мне пришлось ждать 8 минут, чтобы принять ;-) Спасибо за помощь. –

Смежные вопросы