Распакуйте список и поместите в качестве переменной
У меня есть исходный код следующего вида
chain примите множественное число списков.
list1 = [1,2,3]
list2 = [1,2,3]
list3 = [1,2,3]
chain(list1,list2,list3)
Однако я хочу рассматривать list1 list2 list3 как один список и поместить это в цепочку
total = [list1,list2,list2]
chain(total) # it doesn't work , ochain doesn't accept the list.
Есть ли какой-нибудь хороший способ сделать это?
Это работает.
from itertools import chain
list1 = [1,2,3]
list2 = [1,2,3]
list3 = [1,2,3]
print(list(chain(list1,list2,list3))) # you need to convert chain object to list.
Есть простой способ, использующий чистый python.
list1 = [1,2,3]
list2 = [1,2,3]
list3 = [1,2,3]
output_list = list1+list2+list3
print(output_list)
Использовать itertools.chain.from_iterable
from itertools import chain
list1 = [1, 2, 3]
list2 = [1, 2, 3]
list3 = [1, 2, 3]
total = [list1, list2, list3]
result = chain.from_iterable(total)
>>> list(result)
[1, 2, 3, 1, 2, 3, 1, 2, 3]
Другой простой способ сделать это (без дополнительных либ):
list1 = [1,2,3]
list2 = [1,2,3]
list3 = [1,2,3]
result = [*list1,*list2,*list3]
print(result)
[1, 2, 3, 1, 2, 3, 1, 2, 3]