Python读取一个路径下的文件夹,文件夹内含有多个子文件夹子文件夹中还有文件夹,提前里面的txt文本并合并在一个excel中
时间: 2023-05-25 13:07:02 浏览: 142
以下是Python3的代码示例,其中使用了os、pandas和glob模块:
```python
import os
import pandas as pd
import glob
# 指定要读取的根目录
root_dir = "path/to/root/directory"
# 用glob模块获取所有txt文件的路径
txt_files = glob.glob(os.path.join(root_dir, "**/*.txt"), recursive=True)
# 读取所有txt文件的内容并合并到一个DataFrame中
data = pd.DataFrame()
for txt_file in txt_files:
with open(txt_file, "r") as f:
content = f.read()
data = data.append({"file_name": os.path.basename(txt_file), "content": content}, ignore_index=True)
# 将DataFrame输出到Excel文件
output_file = "output.xlsx"
data.to_excel(output_file, index=False)
```
代码解析:
1. 首先指定要读取的根目录;
2. 用glob模块获取所有txt文件的路径,其中`os.path.join(root_dir, "**/*.txt")`指定了要搜索的文件类型为txt,并通过`recursive=True`参数使搜索递归进子文件夹中;
3. 创建一个空的DataFrame,依次读取每个txt文件的内容,并将文件名与内容加入到DataFrame中;
4. 将DataFrame输出到Excel文件,其中`index=False`参数表示不需要输出行索引。
阅读全文