Python 转换文件编码类型
22 Jun 2018在处理文件时经常需要对文件进行转码,文件编码类型如下表:
编码类型 | 编码描述 |
---|---|
ANSI码 | 多用于英文字母及数字(存储汉字容易报错) |
Unicode | 包含:汉字、英文字母、数字及各国通用语言 |
UTF-8 | 可变长度的Unicode(最常用) |
GBK编码 | 面向汉字的编码(最少用) |
大家可先创建几个ANSI编码类型的测试文件,我们试图将ANSI文件转换为utf-8,相关代码如下:
import os
import pandas as pd
# 最终转换的文件编码格式
coding = 'utf-8'
# 需要修改的文件夹路径
file_dir = 'D:\\test\\'
def run_coding():
for root, dirs, files in os.walk(file_dir, topdown=False):
for i in files:
files_name = os.path.join(root, i)
try:
df1 = pd.read_csv(files_name, encoding='utf-8')
except:
df1 = pd.read_csv(files_name, encoding='gbk')
df1.to_csv(files_name, encoding=coding,index=None)
if __name__ == '__main__':
run_coding()
print("Finish translate")
分类: Python技术