Проверить OrderedDict на основе индекса в CSV?

Я пытаюсь сделать разные проверки на основе номера индекса словаря. Итак, если index == 0, сделайте что-нибудь, в противном случае, если index>0, сделайте что-нибудь еще.

Я пытался использовать 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]

1 ответ

Решение

Может быть, вы могли бы сделать что-то вроде этого. (Пример ниже написан в синтаксисе 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])
Другие вопросы по тегам