OptionError:“模式匹配多个键”pandas

Sam*_*jan 11 python xls pandas

我正在尝试读取 Excel 文件。

import requests
url = 'http://www.nepalstock.com/todaysprice/export'
r = requests.get(url, allow_redirects=True)
open('todayprice.xls', 'wb').write(r.content)

import pandas as pd
pd.set_option("xls", "openpyxl")
fileurl='todayprice.xls'
df=pd.read_excel(fileurl)
print(df)
Run Code Online (Sandbox Code Playgroud)

我收到一条错误消息:

raise OptionError("Pattern matched multiple keys")
pandas._config.config.OptionError: 'Pattern matched multiple keys'
Run Code Online (Sandbox Code Playgroud)

Poe*_*tor 25

当人们使用旧代码作为 pandas 选项时,例如precision. 从 1.4 开始,其中一些被替换为更长的形式,例如display.precision.

解决方案:访问pandas 文档中的选项列表并找到选项的更新名称。

我想补充一点,错误消息Pattern matched multiple keys非常令人困惑。Pandas 团队可能想要改变它。


小智 12

在新的 Pandas 版本中,您需要使用下面的代码来获得所需的输出。

pd.options.display.max_rows = 5
Run Code Online (Sandbox Code Playgroud)

  • 永远不要写“新的熊猫版本”之类的东西,它会变得非常陈旧。具体一点:“pandas 1.4+”或其他什么。 (10认同)

Gaë*_*tan 1

您可以尝试使用该选项,io.excel.xls.reader而不仅仅是xls.

来自文档

正则表达式应该匹配单个选项。注意:为了方便起见,支持部分匹配,但除非您使用完整的选项名称(egxyzoption_name),否则如果引入具有相似名称的新选项,您的代码可能会在未来版本中中断。