2013-10-02 3 views
-2

У меня есть .csv-файл, который имеет разные типы данных в каждом поле.Проблема чтения файла Python

Файловая структура имеет

zbcdexc, 0011222, Ryan, Luke 

Когда я прочитал CSV я получаю сообщение об ошибке сказав "SyntaxError: Недопустимый маркер". Я знаю, что число python, начинающееся с 0, находится в различной базовой системе. Как читать файл, чтобы это поле можно было считать «00111222» в качестве строки вместо номера?

Пожалуйста, помогите.

Текущий код

with open(epi_csv_file, 'rb') as csvfile: 
myReader = csv.reader(csvfile, delimiter=',') 
for row in myReader: 
    print(row) 

Спасибо

+4

Пожалуйста отправьте точное сообщение об ошибке и отслеживающий. Я сомневаюсь, что вы видите эту ошибку с этим кодом. И, пожалуйста, убедитесь, что ваш отступ правилен. Кроме того, есть ли пробелы после каждого разделителя? Этого не должно быть (но можно игнорировать). –

ответ

1

Есть несколько ошибок в коде, но они не производят, что сообщение об ошибке (например, ваш код будет производить IndentationError перед ним Еще одна ошибка заключается в том, что вы открываете файл неправильно. В Python 3 вы не должны использовать режим rb, вместо этого вы должны установить параметр newline="". Также (с вашими данными) вам нужно пропустить начальную пробел:

with open(epi_csv_file, newline="") as csvfile: 
    myReader = csv.reader(csvfile, delimiter=',', skipinitialspace=True) 
    for row in myReader: 
     print(row) 

Выход:

['zbcdexc', '0011222', 'Ryan', 'Luke'] 
Смежные вопросы