IOError: [Errno 22] 使用 pandas.read_excel 的无效模式 ('rb')
Posted
技术标签:
【中文标题】IOError: [Errno 22] 使用 pandas.read_excel 的无效模式 (\'rb\')【英文标题】:IOError: [Errno 22] invalid mode ('rb') using pandas.read_excelIOError: [Errno 22] 使用 pandas.read_excel 的无效模式 ('rb') 【发布时间】:2015-10-05 23:15:48 【问题描述】:我一直有以下错误。您应该知道文件名是正确的,并且此 pandas 方法适用于其他 py 文件,请帮助!!!!
tablecouleurs 是一个没有特定字符的 Excel 表格
import pandas as pd
colors=pd.read_excel('C:\Users\paul\tablecouleurs.xlsx', index_col=0, has_index_names=True)
和错误:
runfile('C:/Users/paul/Documents/colors.py', wdir='C:/Users/pauldufosse/Documents') Traceback(最近一次调用 最后):
文件“”,第 1 行,在 runfile('C:/Users/paul/Documents/colors.py', wdir='C:/Users/pauldufosse/Documents')
文件 "C:\Users\paul\Anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", 第 685 行,在运行文件中 execfile(文件名,命名空间)
文件 "C:\Users\paul\Anaconda\lib\site-packages\spyderlib\widgets\externalshell\sitecustomize.py", 第 71 行,在 execfile 中 exec(compile(scripttext, filename, 'exec'), glob, loc)
文件“C:/Users/paul/Documents/colors.py”,第 12 行,在 colors=pd.read_excel('C:\Users\pauldufosse\tablecouleurs.xlsx', index_col=0, has_index_names=True)
文件 "C:\Users\paul\Anaconda\lib\site-packages\pandas\io\excel.py", 第 151 行,在 read_excel 中 return ExcelFile(io, engine=engine).parse(sheetname=sheetname, **kwds)
文件 "C:\Users\paul\Anaconda\lib\site-packages\pandas\io\excel.py", 第 188 行,在 init 中 self.book = xlrd.open_workbook(io)
文件 "C:\Users\paul\Anaconda\lib\site-packages\xlrd_init_.py", 第 394 行,在 open_workbook 中 f = 打开(文件名,“rb”)
IOError: [Errno 22] 无效模式 ('rb') 或文件名: 'C:\Users\paul\tablecouleurs.xlsx'
【问题讨论】:
您是否尝试过使用正斜杠?您在该文件名(制表符)中有一个 \t (..sse\tabl..),所以也许这就是它失败的原因? 【参考方案1】:open_workbook f = open(filename, 'rb')
如果你检查 Python 库,你会发现你必须使用单引号而不是双引号。
【讨论】:
【参考方案2】:遇到了同样的问题。您可以通过双重转义路径来解决它。
错误消息说:
IOError: [Errno 22] invalid mode ('rb') or filename: 'C:\Users\pauldufosse\tablecouleurs.xlsx'
只要做:
foo = pd.ExcelFile('C:\\Users\\pauldufosse\\tablecouleurs.xlsx')
这对我有用
【讨论】:
以上是关于IOError: [Errno 22] 使用 pandas.read_excel 的无效模式 ('rb')的主要内容,如果未能解决你的问题,请参考以下文章
Python IOError: [Errno 22] invalid mode ('r') 解决方法
IOError:[Errno 套接字错误] 使用 BeautifulSoup
IOError: [Errno 22] invalid mode ('rb') or filename: 'F:\netData1.mat'
IOError: [Errno 22] invalid mode ('rb') or filename: ’u202a’ / 'xe2x80xaa’