jython соединение с CSV-файлом - PullRequest
0 голосов
/ 22 февраля 2011

Привет У меня есть код для чтения файла CSV

import csv
d = csv.reader(open('C:/Documents and Settings/242481/My Documents/file.csv'))
for row in d:
    print row

Этот код возвращает все строки в CSV-файле. Есть ли способ, которым я могу читать по одной строке за раз. И каждый раз, когда я выполняю строку печати, мне нужно получить следующую строку. заранее спасибо Aadith

1 Ответ

0 голосов
/ 22 февраля 2011

это должно работать так, как у вас, но, возможно, символы EOL не соответствуют ожидаемой для вашей системы. попробуйте открыть его с помощью 'rU': open ('file.csv', 'rU')

чтобы убедиться, что он печатает по одной строке за раз, вы можете напечатать пустую строку между строками:


for row in d:
 print row
 print

или приостановить его:

for row in d:
 print row
 raw_input('continue-> ')

Для вашего другого кода это должно быть что-то вроде:


def value():
 infile=open("C:/Documents and Settings/242481/My Documents/file.csv", "rU")
 data = [row for row in infile]
 infile.close()
 return data

Всегда закрывайте ваши открытые файлы. Это хорошая практика, хотя и не всегда строго необходимая. И «файл» - это имя класса Python. Хотя вы можете использовать их по своему усмотрению, в дальнейшем это может привести к трудным обнаружениям ошибок.

...