想用python将文件家里面的数据导入,但是遇到错误,请各位DS、LS指导一下:
TypeError Traceback (most recent call last)
~\AppData\Local\Temp\ipykernel_14760\1758730604.py in <module>
2 for i in file_name_list:
3 if i.endswith(".xlsx"): #筛选只读取xlsx结尾的文件
----> 4 df.append(pd.read_excel((file_dir_list[i])))
5
6
TypeError: list indices must be integers or slices, not str
问题出在这里“pd.read_excel(file_dir_list[i])”
import pandas as pd
import os
from functools import reduce
#指定存放文件的地址
dir_str = r'E:\数据包\2021-2023全国各城市库存量\data_1'
#返回.xlsx格式所有文件名的列表list
file_name_list = os.listdir(dir_str)
['export_0.xlsx', 'export_1.xlsx']
# for循环获取所有.xlsx格式文件的绝对地址的列表list
file_dir_list = [os.path.join(dir_str,x) for x in file_name_list]
['E:\\数据包\\2021-2023全国各城市库存量\\data_1\\export_0.xlsx', 'E:\\数据包\\2021-2023全国各城市库存量\\data_1\\export_1.xlsx', ]
df = []
for i in file_name_list:
if i.endswith(".xlsx"): #筛选只读取xlsx结尾的文件
df.append(pd.read_excel(file_dir_list[i]))