我怎样才能调用f.readline()
线分隔符在\r\n
哪里?
这个 CSV 文件非常大,所以我不能这样做f.read().split('\r\n')
。
相反,我希望f.readline('\r\n')
.
这是一个典型的行:
1, "ABC", "the quick \n brown fox \n jumps over the \n lazy dogs", 5 \r\n
看来您实际上是在尝试读取 CSV 文件(或类似文件),其中嵌入在引号中的换行符需要被忽略。
这是csv
模块已经为您处理的事情。
import csv
with open("myfile", "rb") as infile:
reader = csv.reader(infile, delimiter=",", skipinitialspaces=True)
for line in reader:
print line
来自 csv python 文档
>>> import csv
>>> with open('eggs.csv', 'rb') as csvfile:
... spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|') #<--- Note the
#delimiter param.
... for row in spamreader:
... print ', '.join(row)
Spam, Spam, Spam, Spam, Spam, Baked Beans
Spam, Lovely Spam, Wonderful Spam
只需制作一个分隔符设置为 '\r\n' 的 csvreader。这应该给你由 \r\n 分隔的每一行。