我有一个latin1编码的文件。我将如何使用csv完成以下等价的操作
>>> import csv
>>> with open(filepath, 'rb') as csvfile:
... reader = csv.DictReader(csvfile, delimiter='\t', encoding='iso-8859-1')发布于 2015-07-16 03:04:59
以下是您可以这样做的一种方法:
def Latin1ToUnicodeDictReader(latin1_data, **kwargs):
csv_reader = csv.DictReader(latin1_data, **kwargs)
for row in csv_reader:
yield {key: value.decode('iso-8859-1').encode('utf8') if value else value for key, value in row.iteritems()}
reader = Latin1ToUnicodeDictReader(csvfile, delimiter='\t')发布于 2015-07-16 03:10:56
with open(filepath, "r", encoding="ISO-8859-1") as csvfile:
reader = csv.DictReader(csvfile)https://stackoverflow.com/questions/31444177
复制相似问题