我正在处理Concordance loadfiles并且必须编辑它们,因此我正在使用Python。这些列由pilcrow char ¶
分隔,并以þ
作为quotechar。
问题是quotechar,python中的csv模块只接受单字符引号(当我编写csv文件时没有问题。)
问题:如何在Python中读取CSV文件,其中quotechar是多字符的?
CSV文件示例:
þcol_1þ¶þcol_2þ¶þcol_3þ¶þcol_4þ
答案 0 :(得分:3)
Concordance文件格式是8位编码,¶
和þ
字符是用Latin-1编码的。这意味着它们分别被编码为二进制值0xB6和0xFE。
Python 2 csv
模块非常高兴地接受这些字节:
csv.reader(fileobj, delimiter='\xb6', quotechar='\xfe')
与csv
模块一样,请确保以二进制模式打开文件,以便对模块进行换行处理。
在Python 3中,使用newline=''
和encoding='latin1'
以文本模式打开文件,并使用上述\xhh
转义符或实际字符,因此delimiter='¶', quotechar='þ'
。< / p>