我目前正在使用pandas来读取Excel文件并向用户显示其工作表名称,因此他可以选择他想要使用的工作表.问题是文件非常大(70列x 65k行),在笔记本上加载最多需要14秒(CSV文件中的相同数据需要3秒).
我在熊猫的代码是这样的:
xls = pandas.ExcelFile(path)
sheets = xls.sheet_names
Run Code Online (Sandbox Code Playgroud)
我之前尝试过xlrd,但获得了类似的结果.这是我的xlrd代码:
xls = xlrd.open_workbook(path)
sheets = xls.sheet_names
Run Code Online (Sandbox Code Playgroud)
那么,有人能建议一种更快的方法从Excel文件中检索工作表名称而不是读取整个文件吗?
我在我的一个函数中发现了一个特定的错误,其中按位比较OR的args顺序似乎很重要:
In: None or False
Out: False
In: False or None
Out: None
Run Code Online (Sandbox Code Playgroud)
使用Python 2.7.2和IPython 0.10.2进行了检查.
我可以确保,如果一个元素为None,确保他是比较的第一个arg,就像这样
if a==None:
a or b
else:
b or a
Run Code Online (Sandbox Code Playgroud)
但有人可以解释一下为什么在OR比较中更改顺序会影响输出吗?这特别适用于Python吗?
谢谢.