如何在 Python 中为每个多维数组获取单个值。我尝试使用 for
循环打印。
[dict_keys(['section_001', 'section_002', 'section_003']), dict_keys(['section_001', 'section_002', 'section_003']), dict_keys(['section_001', 'section_002', 'section_003']), dict_keys(['section_001', 'section_002', 'section_003']), dict_keys(['section_001']), dict_keys(['section_001']), dict_keys(['section_003', 'section_004', 'section_007', 'section_008', 'section_002', 'section_006', 'section_005', 'section_001']), dict_keys(['section_003', 'section_004', 'section_007', 'section_008', 'section_002', 'section_006', 'section_005', 'section_001']), dict_keys(['section_001', 'section_002', 'section_003']), dict_keys(['section_001', 'section_002', 'section_003'])]
预期结果应该是:
section_001
section_002
对于每个数组。
最佳答案
expect result should be: section_001 section_002 for each array
在Python3中,你不能对 view 进行切片如dict.keys
与列表
的方式相同。但你可以使用itertools.islice
对任何可迭代对象进行切片并将结果提供给list
。这是一个演示:
from itertools import islice
d = dict.fromkeys([f'section_00{i}' for i in range(1, 4)])
L = [d.keys() for _ in range(3)]
res = [list(islice(x, 0, 2)) for x in L]
# [['section_001', 'section_002'],
# ['section_001', 'section_002'],
# ['section_001', 'section_002']]
关于python - 如何从字典键列表中提取特定项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54391429/