如何从字典键列表中提取特定项

2024-04-16 20:29:03 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在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

对于每个数组。你知道吗


Tags: forsection数组keysdict
2条回答

expect result should be: section_001 section_002 for each array

在Python3中,不能用与list相同的方式对view^{}进行切片。但是您可以使用^{}任何iterable进行切片,并将结果馈送给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']]

将它赋给x然后打印x[0]将得到一个值。你知道吗

请修改你的问题。你知道吗

就目前情况而言,你还没有告诉我们有关dict_keys的细节。你可能会发现https://stackoverflow.com/help/mcve很有帮助。你知道吗

在调试过程中,您可能还会发现漂亮的打印机很有用:

import pprint
pprint.pprint(x)

相关问题 更多 >