写一个python脚本,把我指定文件夹以及其子目录内的txt文件,全部转化为csv格式。然后将csv文件用当前文件夹名称命名。
时间: 2024-05-09 10:18:36 浏览: 95
以下是一个可能的Python脚本,可以实现将指定文件夹及其子目录内的txt文件转换为csv格式,并将csv文件以当前文件夹名称命名:
```python
import os
import csv
# 定义函数将txt文件转换为csv文件
def txt_to_csv(txt_file, csv_file):
with open(txt_file, 'r') as f_in, open(csv_file, 'w', newline='') as f_out:
reader = csv.reader(f_in, delimiter='\t') # 假设txt文件用tab分隔
writer = csv.writer(f_out)
writer.writerows(reader)
# 获取当前脚本所在的文件夹名称
folder_name = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
# 遍历指定文件夹及其子目录内的txt文件,并将其转换为csv文件
for root, dirs, files in os.walk('./my_folder'): # 将'./my_folder'改为指定的文件夹路径
for file in files:
if file.endswith('.txt'):
txt_path = os.path.join(root, file)
csv_path = os.path.join(root, folder_name + '.csv')
txt_to_csv(txt_path, csv_path)
```
注意,在代码中,需要将`./my_folder`改为指定的文件夹路径,即要转换的txt文件所在的文件夹。此外,代码中使用了`csv`模块来读取和写入csv文件。在实际使用中,也可以使用其他第三方库或自行编写读写文件的函数来实现转换。
阅读全文