如何解包列表元组
How to unpack a tuple of lists
我正在尝试解压缩包含在元组中的列表的元素。
myTuple = (['a', 'list', 'of', 'strings'], ['inside', 'a', 'tuple'], ['extra', 'words', 'for', 'filler'])
例如我想获取这个元素 ('a')
我试过这个:
for (i, words) in list(enumerate(myTuple)):
print(words)
但是这个returns列表是这样的
['a', 'list', 'of', 'strings']
['inside', 'a', 'tuple']
etc...
如何获取列表中的元素?
目前您只是遍历整个循环并打印出列表中包含的元素。
但是,如果您想访问列表中的特定元素,则只需使用 .index()
按名称引用它
或者你可以只打印(list(indexposition))
您可以使用 reduce
,例如。用 numpy
from functools import reduce
reduce(append, myTuple)
Out[149]:
array(['a', 'list', 'of', 'strings', 'inside', 'a', 'tuple', 'extra',
'words', 'for', 'filler'], dtype='<U7')
或者,基础
import operator
from functools import reduce
reduce(operator.add, myType, [])
# or, reduce(lambda x, y: x + y, myTuple)
reduce
与 map
、filter
等是一个经典的列表操作函数。它采用一个初始值,这里是一个空列表,并连续应用一个函数 (append
) 到序列的每个元素 (myTuple
).
您可以使用元组的索引,然后使用列表来访问最内层的元素。例如,要获取字符串 'a'
,您可以调用:
myTuple[0][0]
如果您想遍历列表中的所有元素,可以使用 chain
方法形式 itertools
。例如:
from itertools import chain
for i in chain(*myTuple):
print(i)
我正在尝试解压缩包含在元组中的列表的元素。
myTuple = (['a', 'list', 'of', 'strings'], ['inside', 'a', 'tuple'], ['extra', 'words', 'for', 'filler'])
例如我想获取这个元素 ('a')
我试过这个:
for (i, words) in list(enumerate(myTuple)):
print(words)
但是这个returns列表是这样的
['a', 'list', 'of', 'strings']
['inside', 'a', 'tuple']
etc...
如何获取列表中的元素?
目前您只是遍历整个循环并打印出列表中包含的元素。
但是,如果您想访问列表中的特定元素,则只需使用 .index()
按名称引用它或者你可以只打印(list(indexposition))
您可以使用 reduce
,例如。用 numpy
from functools import reduce
reduce(append, myTuple)
Out[149]:
array(['a', 'list', 'of', 'strings', 'inside', 'a', 'tuple', 'extra',
'words', 'for', 'filler'], dtype='<U7')
或者,基础
import operator
from functools import reduce
reduce(operator.add, myType, [])
# or, reduce(lambda x, y: x + y, myTuple)
reduce
与 map
、filter
等是一个经典的列表操作函数。它采用一个初始值,这里是一个空列表,并连续应用一个函数 (append
) 到序列的每个元素 (myTuple
).
您可以使用元组的索引,然后使用列表来访问最内层的元素。例如,要获取字符串 'a'
,您可以调用:
myTuple[0][0]
如果您想遍历列表中的所有元素,可以使用 chain
方法形式 itertools
。例如:
from itertools import chain
for i in chain(*myTuple):
print(i)