我正在使用Python CSV库来读取两个CSV文件。
其中一个是以UTF-8 BOM编码,另一个是以UTF-8编码。 在我的实践中,我发现可以使用"utf-8-sig"作为编码类型来读取这两个文件:
from csv import reader
with open(file_path, encoding='utf-8-sig') as csv_file:
c_reader = reader(csv_file, delimiter=',')
headers = next(c_reader)
for row in c_reader:
print(row)
我想确认一下,"utf-8-sig"适用于解码UTF-8和UTF-8 BOM吗?我正在使用Python 3.6和3.7版本。谢谢你的回答!
'utf-8-sig'
读取所有 UTF-8 文件,使用'utf-8'
写入大多数文件,并使用'utf-8-sig'
写入您知道将在 Windows 系统上独占打开的文件? - Mark Ransom