python3.6下pandas.read_csv的小技巧

在python3.6下用pandas.read_csv(‘c:\python\xxxxx\test.py’)读取文件时,如路径没有中文是可以顺利读并操作的。但是当(‘c:\python\中文\test.py’)有中文后会报错:oserror: initializing from file failed
报错的截图
chiba = pd.read_csv('c:/python/pycharmwork/data/return300.csv',index_col=0)
以上这么写是没问题的,路径没有中文;路径有中文就得这么写:
路径 = c:/python/pycharmwork/python为工具/data/return300.csvpwd = os.getcwd()#获取当前路径,这个在python代码中比较常用os.chdir(os.path.dirname(路径))#改变当前目录,到指定目录中chiba = pd.read_csv(os.path.basename(路径))#返回path最后的文件名os.chdir(pwd)#改变到当前路径
这么写之后,还是有点小区别,
可以分别打印一下头五个数据print(chiba.head(5)),结果如下:
没有中文路径的到的数据
有中文路径的到的数据
可以看到是有小许区别的,以第二种有中文路径的,会再前边加一个序列;如果要用日期的index来画图,没有中文路径的直接这么写就可以
chiba.index=pd.to_datetime(chiba.index)
但有中文路径的需要这么写就可以
chiba.index=pd.to_datetime(chiba.date)
绘图结果: