写一个python脚本,把文件夹和它的子目录下的所有的txt文档分别转换成excel文件,并将转化后的excel文件按照当前文件夹的名字重新命名
时间: 2024-04-29 11:23:34 浏览: 13
以下是一个实现该功能的Python脚本:
```python
import os
import glob
import pandas as pd
def txt_to_excel(folder_path):
for root, dirs, files in os.walk(folder_path):
for file in files:
if file.endswith('.txt'):
# 读取txt文件
txt_path = os.path.join(root, file)
df = pd.read_csv(txt_path, sep='\t')
# 转换为excel文件并重新命名
excel_path = os.path.join(root, file.replace('.txt', '.xlsx'))
df.to_excel(excel_path, index=False)
os.rename(excel_path, os.path.join(root, os.path.basename(root) + '.xlsx'))
# 示例:将当前目录及其子目录下的所有txt文件转换为excel文件并重新命名
txt_to_excel('.')
```
该脚本使用了`os.walk`函数遍历指定文件夹及其子目录下的所有文件,使用`glob`模块可以更方便地获取指定类型的文件。对于每个txt文件,使用`pandas`库的`read_csv`函数读取为DataFrame,然后使用`to_excel`函数转换为Excel文件,最后使用`os.rename`函数将转换后的Excel文件重新命名为当前文件夹的名字。