要解决编码问题,首先要清楚你的文件的编码格式是什么。pd.read_excel是不带encoding参数(默认以utf8解析),因此必须采取变通的方法。你给出的这两个文件是cp936的编码,参考如下可以不手动打开excel:
- import glob
- import pandas as pd
- files=glob.glob(r'D:\test\*.xlsx')
- with open(files[0],encoding='cp936') as f:
- df=pd.read_excel(f)
-
- for file in files[1:]:
- with open(file,encoding='cp936') as f:
- df=pd.merge(left=df,right=pd.read_excel(f),on=['ID','日期'])
- df.to_excel(r'D:\test\result.xlsx',index=False)
复制代码