Yot*_*tam 0 python iteration dictionary
假设我像这样创建一个字典:
self.defaultValues = {}
self.defaultValues["A"] = "10"
self.defaultValues["B"] = "100"
self.defaultValues["C"] = "20"
self.defaultValues["D"] = "12.5"
Run Code Online (Sandbox Code Playgroud)
我希望能够以我添加它们的相同顺序迭代项目,这意味着
for k in self.defaultValues:
print k
Run Code Online (Sandbox Code Playgroud)
会导致
A
B
C
D
Run Code Online (Sandbox Code Playgroud)
另外,如果我有另一个列表,不一定长度相同.我想迭代字典和列表,如果列表中存在值,我将打印它,否则我将打印,如果形成字典.它很容易做到简单
if self.list.count(value) != 0:
Run Code Online (Sandbox Code Playgroud)
但我认为可能有更优雅的方式来做到这一点.
谢谢!
对于第一个问题,请使用OrderedDict:
from collections import OrderedDict
d = OrderedDict()
d["A"] = "10"
d["B"] = "100"
d["C"] = "20"
d["D"] = "12.5"
for k in d:
print k
Run Code Online (Sandbox Code Playgroud)
OrderedDict 尊重插入元素的顺序.
对于您的第二个问题(您应该针对不同的问题单独提出问题),您可以使用它in来测试对象是否在列表中:
l = [1,2,3,4]
print 1 in l # prints True
print 5 in l # prints False
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
67 次 |
| 最近记录: |