簡體   English   中英

如何從字典鍵列表中提取特定項目

[英]How to extract specific items from list of dictionary keys

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

對於每個數組。

預期結果應為:每個數組的section_001 section_002

在Python3中,您無法像list一樣諸如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']]

將其分配給x ,然后打印x[0]將得到一個值。

請修改您的問題。

就目前而言,您尚未提供dict_keys 您可能會發現https://stackoverflow.com/help/mcve會有所幫助。

在調試過程中,您可能還會發現漂亮打印機有幫助:

import pprint
pprint.pprint(x)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM