2017-10-11 254 views
0

有一个很好的错误。python 3.5:OSError:[Errno 22]无效参数:'E:\ python \ Sales prog nacenka.xlsx'

import pandas as pd 
import xgboost as xgb 
sales_shop = pd.read_excel('E:\python\Sales prog\sales.xlsx', index_col = "date") 
holidays = pd.read_excel('E:\python\Sales prog\holidays common.xlsx', index_col = "date") 
datecom = pd.read_excel('E:\python\Sales prog\date.xlsx', index_col = "date") 
nacenka = pd.read_excel('E:\python\Sales prog\nacenka.xlsx', index_col = "date") 

错误文本:

OSError: [Errno 22] Invalid argument: 'E:\python\Sales prog\nacenka.xlsx'

但是,如果我写:

import pandas as pd 
import xgboost as xgb 
sales_shop = pd.read_excel('E:\python\Sales prog\sales.xlsx', index_col = "date") 
holidays = pd.read_excel('E:\python\Sales prog\holidays common.xlsx', index_col = "date") 
datecom = pd.read_excel('E:\python\Sales prog\date.xlsx', index_col = "date") 
nacenka = pd.read_excel('E:/python/Sales prog/nacenka.xlsx', index_col = "date") 

我没有麻烦,但是怎么样?我只是改变了斜坡,而在其他地方,他保持不变。

+0

因为'\ N'是如果你正在使用Windows被推断为一个换行符 – EdChum

+0

控制字符,你应该小心你的路径字符串。 –

+0

用'r'前缀你的文件名字符串,例如'pd.read_excel(r'E:\ PY ...' –

回答

0

我会建议你痛苦变量的路径,一旦你不得不多次使用它,你也应该遵循评论中的建议使用\ n可以给你很多麻烦,在我的情况下,使用Windows,我必须逃避所有'\'。

试试这个:

import pandas as pd 
import xgboost as xgb 
salesPath = "E:\\python\\Sales prog\\" 
sales_shop = pd.read_excel(salesPath+'sales.xlsx', index_col = "date") 
holidays = pd.read_excel(salesPath+'holidays common.xlsx', index_col = "date") 
datecom = pd.read_excel(salesPath+'date.xlsx', index_col = "date") 
nacenka = pd.read_excel(salesPath+'nacenka.xlsx', index_col = "date") 
相关问题