Python 熊猫:文件路径和文件名中带有重音/特殊字符的oserror
我正在尝试使用pandas.read_csv从一些.csv文件中获取数据。只要文件名或文件路径中没有重音(例如,ä、é、ü),这种方法就行。当我使用诸如Python 熊猫:文件路径和文件名中带有重音/特殊字符的oserror,python,csv,pandas,special-characters,Python,Csv,Pandas,Special Characters,我正在尝试使用pandas.read_csv从一些.csv文件中获取数据。只要文件名或文件路径中没有重音(例如,ä、é、ü),这种方法就行。当我使用诸如düm1.csv之类的文件名时,我会收到以下错误:OSError:从文件初始化失败。我的代码是: dum1=pd.read\u csv(r“C:\Users\MyName\Desktop\dumm12\düm1.csv”,sep=“;”,decimal=“,”,encoding=“utf-8”) 我正在使用pandas 0.20.1和python
düm1.csv之类的文件名时,我会收到以下错误:OSError:从文件初始化失败
。我的代码是:
dum1=pd.read\u csv(r“C:\Users\MyName\Desktop\dumm12\düm1.csv”,sep=“;”,decimal=“,”,encoding=“utf-8”)
我正在使用pandas 0.20.1和python 3.6.0。我发现这在以前的版本中是一个问题,但我认为它已经解决了。有没有办法解决这个问题?我还发现:
pd.show_versions()的输出:
已安装版本
提交:无
python:3.6.0.final.0
python位:64
操作系统:Windows
操作系统版本:10
机器:AMD64
处理器:Intel64系列6型号78 Stepping 3,GenuineIntel
字节顺序:小
立法会全体议员:没有
朗:嗯
地点:无,无
熊猫:0.20.1
pytest:3.0.5
pip:9.0.1
设置工具:27.2.0
赛顿:没有
numpy:1.11.3
scipy:0.18.1
沙雷:没有
伊皮顿:5.2.2
斯芬克斯:1.5.1
帕特西:0.4.1
dateutil:2.6.0
pytz:2016.10
无
瓶颈:1.2.0
表:3.2.2
numexpr:2.6.2
羽毛:没有
matplotlib:2.0.0
openpyxl:2.4.1
xlrd:1.0.0
xlwt:1.2.0
xlsxwriter:0.9.6
lxml:3.7.3
bs4:4.5.3
html5lib:0.999
sqlalchemy:1.1.5
pymysql:没有
psycopg2:没有
金甲2:2.9.5
s3fs:无
熊猫:没有
pandas_datareader:无到目前为止,问题尚未解决。请等到PR。或者用Python 2.7试试。我想这可能会奏效。问题到现在还没有解决。等一个PR,或者用Python2.7试试,我想这可能行得通。我在创建一个伪文件'düm1.csv'时测试了这个名称
当我跑步时:
df = pd.read_csv('düm1.csv',sep=';')
我没有操作错误,文件在我的Ipython中打开
Unnamed: 0 test1 test2 test3 tes4
0 NaN 1.0 2.0 3.0 4.0
1 NaN NaN NaN NaN NaN
2 NaN NaN NaN NaN NaN
3 NaN NaN NaN NaN NaN
4 NaN NaN NaN NaN NaN
你试过不编码吗?没有口音
C.我在创建一个伪文件“düm1.csv”时测试了这个名称
运行时:
df = pd.read_csv('düm1.csv',sep=';')
我没有操作错误,文件在我的Ipython中打开
Unnamed: 0 test1 test2 test3 tes4
0 NaN 1.0 2.0 3.0 4.0
1 NaN NaN NaN NaN NaN
2 NaN NaN NaN NaN NaN
3 NaN NaN NaN NaN NaN
4 NaN NaN NaN NaN NaN
你试过不编码吗?没有口音
C.我也有类似的问题。在Windows系统中,使用Python 3.6的pandas.read_csv可能会出现问题
Python 3.6将Windows文件系统编码从“mbcs”更改为“UTF-8”。看见您可以使用命令sys.getfilesystemencoding()
获取当前文件系统编码
我有两种解决方案:
1.-使用此代码将所有应用程序更改为与先前的Python一起使用我遇到了类似的问题。在Windows系统中,使用Python 3.6的pandas.read_csv可能会出现问题 Python 3.6将Windows文件系统编码从“mbcs”更改为“UTF-8”。看见您可以使用命令sys.getfilesystemencoding()获取当前文件系统编码 我有两种解决方案:
1.-使用此代码将所有应用程序更改为与之前的Python一起使用谢谢,它为您工作真奇怪。我尝试过不编码,但也不起作用。但是,它没有口音。还有其他想法吗?感谢您的测试,这样我知道这不是一个一般性的问题,而是与我的代码、机器或软件包版本有关。不客气。我正在使用python 3.6.1和ipython 5.3.0。您可以尝试使用encoding='ISO-8859-1'我尝试了使用编码ISO-8859-1,但也不起作用。我将更新python和ipython,希望它能有所帮助。它不适用于口音。看来我不得不接受现状。也许这取决于你电脑的语言。我不知道,但如果你改变了名字,最终你可以使用你的数据,问题就不会出现在你的数据或熊猫身上。祝你好运谢谢,这对你来说很奇怪。我尝试过不编码,但也不起作用。但是,它没有口音。还有其他想法吗?感谢您的测试,这样我知道这不是一个一般性的问题,而是与我的代码、机器或软件包版本有关。不客气。我正在使用python 3.6.1和ipython 5.3.0。您可以尝试使用encoding='ISO-8859-1'我尝试了使用编码ISO-8859-1,但也不起作用。我将更新python和ipython,希望它能有所帮助。它不适用于口音。看来我不得不接受现状。也许这取决于你电脑的语言。我不知道,但如果你改变了名字,最终你可以使用你的数据,问题就不会出现在你的数据或熊猫身上。祝你好运我可以用Python 3.6.1、0.20.1重现这个错误;然而,我直到昨天在使用Python 3.4.4和Pandas 0.18.1时才拥有它。这很奇怪。这可能是新版本中的错误,我应该降级吗?我可以用Python 3.6.1、0.20.1重现这个错误;然而,我直到昨天在使用Python 3.4.4和Pandas 0.18.1时才拥有它。这很奇怪。这可能是新版本中的错误,我应该降级吗?