pandas的to_csv方法默认输出编码方式为uft8,但是是无BOM格式的,但是对于excel软件,其对于utf8编码方式,只支持有BOM格式的,因此直接输出csv文件使用无BOM格式的utf8编码格式的,这时用excel软件打开后会出现中文乱码问题。当然这时excel软件本身不支持无BOM的utf8编码,如果用文本编辑器或者notepad++等支持无BOM的utf8编码方式的编辑器打开还是可以正常显示中文的。
对于这个问题,只需要在to_csv方法中的encoding参数中设置为'utf-8_sig'即可,表示有BOM的utf8编码,这样生成的csv文件用excel打开便不会出现中文乱码问题。