我在python中有一个简单的字典,我想遍历所有项目以显示键和值:
myDictionary = {"0" :0, "1":0, "2":0, "3":0, "4":0, "5":0, "6":12, "7":0,"8":0,"9":0,"10":0,"11":0, "12":0,"13":12}
def count(self, myDictionary):
for k, v in myDictionary.items():
print k,v
Python将myDictionary视为:
{'11': 0, '10': 0, '13': 12, '12': 0, '1': 0, '0': 0, '3': 0, '2': 0, '5': 0, '4': 0, '7': 0, '6': 12, '9': 0, '8': 0}
但是,当键和值打印出来时,仅11 0
打印。我也尝试过iteritems()。为什么只打印字典中的第一个元素?我有python 2.3,如果有所作为。
我假设(基于注释)该代码段不属于字典类,而是一个方法,因此我删除了self
(用于调用类本身内的其他变量或方法),并发现以下代码返回了您想要的结果(运行python 2.7.3):
>>>def count(myDictionary):
for k,v in myDictionary.items():
print k,v
>>>count(myDictionary)
11 0
10 0
13 12
12 0
1 0
0 0
3 0
2 0
5 0
4 0
7 0
6 12
9 0
8 0
>>>
这支持更新为2.7x以及在self
仅使用一个字典(myDictionary
)调用方法时删除的需求,否则将需要两个参数。
如果您需要将数据存储在确实可以实现的类结构中,但我只建议您使用比您发布的数据结构更复杂的数据结构,例如键控字典,其中每个键都具有多个属性,您希望分别致电。如:
dictionary = {v1: 0, 8, 9, v2: 9,6,3}
其中v1
和v2
代表您要分别调用的x,y和z方向的3D向量,而不必循环浏览所有数据。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句