Python 如何访问字典中的元素?
我有一个包含许多键的字典,我想将键的每个元素存储为列表列表Python 如何访问字典中的元素?,python,dictionary,Python,Dictionary,我有一个包含许多键的字典,我想将键的每个元素存储为列表列表 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'
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'],[…]
k = dict['d']
或者,如果您想要列表的副本:
k = dict['d'][:]
我不知道为什么要使用循环,但您需要的值是
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中的内置类型现在,您的字典中的每个键都已经是列表列表。正如Daniel指出的,每个关键点都指向它引用的列表
如果您要查找的是词典中所有列表的列表,您只需执行以下操作:
>>> 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']]]
现有的答案已经以更好的方式解决了您的问题,但我想指出您犯的错误:如果您使用
range(len(dict['d'))
而不是range(len(dict))
,您将得到所需的结果,[3,8,'p3'],[2.8,3,'p4'],[5.5,42,'p1'],[3,17,'p2'],[3,8,'p3'],[…]]而不是[5.5,42,'p1'],[3,17,'p2'],[3,8,'p3'],[2.8,3,'p4']