python遍历包含txt文件的文件夹,将将txt文件的个数从1到最后排序,将序号放在excel文件的第一列,每行的第一个数放在Excel的每行的第二列,每个txt的行数放在Excel的第三列,每行的第六个数放在csv的第四列代码,为表格加入表头,第一列表头名为Id,第二列表头为class,第三列表头为number of classes,第四列表头为conf,第五列表头为result的代码
时间: 2024-04-10 14:33:01 浏览: 253
分享一下python遍历文件夹,读写Excel,压缩文件,上传百度云等操作
下面是符合你要求的代码:
```python
import os
import csv
# 定义文件夹路径和Excel文件路径
folder_path = 'labels' # 替换为包含txt文件的文件夹路径
excel_file = 'output.csv' # 替换为输出的Excel文件路径
# 创建一个CSV文件并打开
with open(excel_file, 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
# 写入表头
writer.writerow(['Id', 'class', 'number of classes', 'conf', 'result'])
# 获取文件夹中的txt并排序
txt_files = sorted([f for f in os.listdir(folder_path) if f.endswith('.txt')])
# 遍历排序后的txt文件
for i, file_name in enumerate(txt_files, start=1):
file_path = os.path.join(folder_path, file_name)
with open(file_path, 'r') as file:
lines = file.readlines()
col1 = i # 序号
col2 = lines[0].split()[0] # 第一个数
col3 = len(lines) # 行数
col4 = lines[0].split()[5] # 第六个数
# 将数据写入CSV文件的相应位置
writer.writerow([col1, col2, col3, col4])
```
这个代码会遍历指定文件夹中的txt文件,并按从1到最后的顺序进行排序。然后,它会将序号、每行的第一个数、行数和每行的第六个数写入到Excel文件的相应列中。请确保将`folder_path`替换为包含txt文件的实际文件夹路径,并将`excel_file`替换为输出的Excel文件路径。
阅读全文