读一个简单的xls返回空数据帧,我一辈子都搞不懂:
path = ('c:/Users/Desktop/Stuff/Ready')
files = os.listdir(path)
print(files)
files_xlsx = [f for f in files if f[-3:] == 'xlsx']
readyorders = pd.DataFrame()
for filename in files_xlsx:
with open(os.path.join(path, filename)) as f:
data = pd.read_excel(f)
readyorders = readyorders.append(data)
print(readyorders)
excel只是两个简单的列…是不是太早了?在
f[-3:] == 'xlsx'
永远不会为真,因为您正在计算最后三个字符并将其与四个字符组成的字符串进行比较。在尝试
f[-4:] == 'xlsx'
另外,附加数据帧的速度非常慢。请尝试串联:
我也遇到过类似的问题,结果发现XLSX有两种类型:“Excel工作簿”(位于下图列表的顶部)和“Strict Open XML电子表格”(带有复选标记)。后者在pandas中返回一个空的电子表格,所以使用Excel工作簿(.xlsx)就不会有问题。在
相关问题 更多 >
编程相关推荐