如何访问字典的元素?

2024-06-01 20:56:50 发布

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

我有一个包含许多键的字典,我想将键的每个元素存储为列表列表。你知道吗

dict = {'d': [[5.5, 42, 'p1'], [3, 17, 'p2'], [3, 8, 'p3'], [2.8, 3, 'p4']],
        'm': [[4.2, 12, 'p5'], [4.8, 25, 'p6'], [4.3, 3, 'p7'], [8.9, 29, 'p8']],
        's': [[8.6, 42, 'p9'], [9.7, 46, 'p10']],
        'g': [[4.3, 56, 'p11'], [5.1, 8, 'p12']]}
k=[]
for i in range(len(dict)):
    k.append(dict['d'][i])
print k
  • 预期输出:[[5.5, 42, 'p1'], [3, 17, 'p2'], [3, 8, 'p3'], [2.8, 3, 'p4']]

  • 电流输出:[2.8, 3, 'p4', [5.5, 42, 'p1'], [3, 17, 'p2'], [3, 8, 'p3'], [...]]

请给我一些建议或者至少给我指出正确的方向。提前谢谢。你知道吗


Tags: 元素列表字典dictp2p3p5p1
3条回答

只需使用索引访问:

k = dict['d']

或者,如果您想要列表的副本:

k = dict['d'][:]

正如您的词典所示,每个键都已经是一个列表列表。正如丹尼尔指出的,每个关键点都指向它所引用的列表。你知道吗

如果您要查找的是词典中所有列表的列表,您可以简单地执行以下操作:

>>> di = {'d':[[5.5,42,'p1'],[3,17,'p2'],[3,8,'p3'],[2.8,3,'p4']],'m':[[4.2,12,'p5'],[4.8,25,'p6'],[4.3,3,'p7'],[8.9,29,'p8']],'s':[[8.6,42,'p9'],[9.7,46,'p10']],'g':[[4.3,56,'p11'],[5.1,8,'p12']] }
>>> [value for value in di.values()]
[[[5.5, 42, 'p1'], [3, 17, 'p2'], [3, 8, 'p3'], [2.8, 3, 'p4']], [[4.2, 12, 'p5'], [4.8, 25, 'p6'], [4.3, 3, 'p7'], [8.9, 29, 'p8']], [[8.6, 42, 'p9'], [9.7, 46, 'p10']], [[4.3, 56, 'p11'], [5.1, 8, 'p12']]]

我不知道为什么要使用循环,但是需要的值是dict中的d的值。您可以通过以下方式访问它:

>>> my_dict = {'d':[[5.5,42,'p1'],[3,17,'p2'],[3,8,'p3'],[2.8,3,'p4']],'m':[[4.2,12,'p5'],[4.8,25,'p6'],[4.3,3,'p7'],[8.9,29,'p8']],'s':[[8.6,42,'p9'],[9.7,46,'p10']],'g':[[4.3,56,'p11'],[5.1,8,'p12']] }

>>> my_dict['d']
[[5.5, 42, 'p1'], [3, 17, 'p2'], [3, 8, 'p3'], [2.8, 3, 'p4']]

注意:不要使用dict作为变量名,因为它是Python中的内置类型

相关问题 更多 >