帮我写一份可以从directory中按文件名开头所含数字顺序获取多个含有六个工作表的excel文件中特定工作表特定格子数据的Python代码并输出成列表
时间: 2024-10-17 16:04:21 浏览: 25
python 将目录中所有excel合并到一个excel中 openpyxl 复制sheet工作表到另一个工作簿
当然,下面是一个示例Python代码片段,它会从指定目录中查找以数字开头的工作簿(假设每个Excel文件有6个工作表),提取特定工作表的特定单元格数据,并将结果存储在一个列表中:
```python
import os
import pandas as pd
# 指定目录路径
dir_path = 'your_directory_path' # 替换为实际的目录路径
# 定义数字前缀,这里我们假设所有工作簿是以两位数字开头
file_prefix = '01'
sheet_name = 'Sheet1' # 需要提取数据的工作表名称
cell_range = 'A1:B10' # 提取的具体单元格范围
# 正则表达式匹配文件名
regex = r'^{}(\d{2}).xls?$'.format(file_prefix)
# 获取所有符合条件的Excel文件
files = [f for f in os.listdir(dir_path) if re.match(regex, f)]
data_list = []
for file in files:
excel_file = dir_path + '/' + file
df = pd.read_excel(excel_file)
# 提取指定工作表的数据
sheet_df = df[sheet_name]
# 提取指定的单元格数据
data = sheet_df[cell_range].values.tolist()
data_list.append(data)
# 输出到列表
print("提取的数据列表:")
print(data_list)
# 如果需要输出成CSV或其他格式,可以添加额外的代码处理这部分
```
记得将`your_directory_path`替换为实际的文件夹路径。这个脚本假定所有Excel文件是.xls格式(如果不是,请修改`read_excel`函数的文件扩展名)。如果有其他特殊情况,比如工作表索引或单元格范围不一样,也需相应调整。
阅读全文