Чтение файла CSV с использованием Python

скажите, пожалуйста, какая проблема в этом коде, она дает ошибку

import csv
with open('some.csv', 'rb') as f:
    reader = csv.reader(f)
    for row in reader:
        print row

Ответ 1

Какую версию Python вы используете?

Оператор with является новым в 2.6 - если вы используете 2.5, вам нужно from __future__ import with_statement. Если вы используете Python старше 2.5, то нет инструкции with, поэтому просто напишите:

import csv
f = open('some.csv', 'rb')
reader = csv.reader(f)
for row in reader:
    print row
f.close()
Тем не менее, действительно лучше обновить до современной версии Python. Python 2.5 был выпущен почти 5 лет назад, а текущая версия в строке 2.x - 2,7

Ответ 2

from __future__ import with_statement

И если это не сработает, перепишите его, чтобы не использовать with в первую очередь.