根据csv中的索引检查OrderedDict?
我想根据字典的索引号做不同的检查。所以,如果索引== 0,做一些事情,否则如果索引> 0,做别的事情。根据csv中的索引检查OrderedDict?
我试图使用OrderedDict
并根据items()
对其进行索引。但如果我说,od.items()[0]
,它只是给了我第一个元素的名称。根据第一个元素是否已被检查,不能写入if
条件。
此外,我不希望根据example.csv
文件中的实际值检查我的条件,因为它会每天更改。
这是我的代码和csv文件中的示例数据。
Example.csv
Key_abc, Value894
Key_xyz, Value256
Key_hju, Value_567
代码:
with open('example.csv','rb') as f:
r = csv.reader(f)
od = collections.OrderedDict(r)
for row in od:
if od.items() == 0:
print 'do some checks and run code'
print row, od[row]
elif od.items() > 0:
print 'go through code without checks'
print row, od[row]
也许你可以做这样的事情。 (以下示例是用python3语法编写的)。
#ExampleCode
with open('example.csv') as f:
r = csv.reader(f)
od = collections.OrderedDict(r)
for index, row in zip(collections.count(), od):
if index == 0:
print('do some checks and run code')
print(row, od[row])
elif index > 0:
print('go through code without checks')
print(row, od[row])
你想在这里做什么:'zip(collections.count(),od)'?我想你想枚举(od)' –
感谢cyber-cap和juanpa.arrivillaga。将索引放在行的前面并枚举(od)给出了我想要的。我修正了最初的答案。 – cordaco
索引什么从csv? – martineau
什么是“字典索引号”?我想你想'枚举' –