写一串代码让他从directory中按excel文件名中包含的数字顺序从每一个excel文件内指定工作组获取一个单元格的数据并输出成列表
时间: 2024-10-16 07:22:23 浏览: 21
你可以按照以下Python代码实现这个需求:
```python
import os
import pandas as pd
# 定义目录
directory = 'C:/Users/Asus/Desktop/打点数据94人云搜名单_numbered_files'
# 获取directory下的所有Excel文件
files = [f for f in os.listdir(directory) if f.endswith('.xlsx')]
# 按照文件名中的数字排序
sorted_files = sorted(files, key=lambda x: int(''.join(filter(str.isdigit, x))))
# 初始化空列表存储数据
data_list = []
# 遍历排序后的文件列表
for file_name in sorted_files:
try:
# 加载Excel文件,并选择'Sheet1'或指定工作表
df = pd.read_excel(os.path.join(directory, file_name), sheet_name='your_sheet_name')
# 获取指定的工作组数据,假设它是某一行的某个单元格,如第0行第1列
data_cell = df.iloc[0, 0] # 请替换为你需要的具体行列
# 将数据添加到列表中
data_list.append(data_cell)
except FileNotFoundError:
print(f"文件 {file_name} 未找到")
except Exception as e:
print(f"读取 {file_name} 出错:{str(e)}")
# 输出结果
print(data_list)
```
在这个代码里,我们假设工作表名称是固定的("your_sheet_name"),并且数据位于第0行第1列。你需要根据实际情况调整`sheet_name`和`df.iloc[0, 0]`部分。另外,我添加了异常处理,以便在文件不存在或者读取过程中遇到错误时给出提示。
阅读全文