You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中将处理后的列表c导出为.csv文件?

解决Python中处理数据并导出CSV的问题

嘿,我来帮你搞定把处理后的结果导出成CSV文件的问题,顺便也修正你代码里的几个小细节~

首先先说说你现有代码里的小问题:

  • 你用到了d.append(b)但变量d根本没定义,运行的时候会直接报错
  • 你把处理后的行拼接成了字符串c,虽然打印出来没问题,但用Python的csv模块处理列表格式的数据会更规范,还能避免手动拼接可能出现的格式错误(比如如果字段里有逗号的话)

下面是修正并优化后的完整代码,既能实现你想要的处理逻辑,又能把结果导出成CSV文件:

import csv

# 第一步:读取原始文件并处理数据
processed_rows = []
with open('stat_memory_cpu.txt', 'r') as input_file:
    reader = csv.reader(input_file)
    next(reader)  # 跳过第一行的"Data"标题行
    for row in reader:
        # 清理时间列,去掉开头的"180510 "
        cleaned_time = row[0].replace('180510 ', '')
        # 组装成新的行数据(用列表格式更适合CSV操作)
        new_row = [cleaned_time, row[1], row[2]]
        processed_rows.append(new_row)
        # 打印处理后的结果,和你期望的输出一致
        print(','.join(new_row))

# 第二步:将处理后的数据导出到CSV文件
with open('output.csv', 'w', newline='') as output_file:
    writer = csv.writer(output_file)
    writer.writerows(processed_rows)

代码说明:

  • 用next(reader)跳过标题行,比固定循环range(1,5)更灵活,就算你的输入文件行数增加,代码也能自动处理所有数据行
  • 把处理后的每行存为列表new_row,而不是字符串,这样csv.writer可以自动处理CSV的格式规范(比如字段包含特殊字符时的转义)
  • newline=''是写入CSV文件的最佳实践,能避免在Windows系统下生成多余的空行
  • writer.writerows(processed_rows)可以一次性把所有处理好的数据写入文件,效率很高

如果你想更精简,也可以把读取和写入合并成一个步骤,不需要额外存储整个列表,适合处理大文件:

import csv

with open('stat_memory_cpu.txt', 'r') as input_file, open('output.csv', 'w', newline='') as output_file:
    reader = csv.reader(input_file)
    writer = csv.writer(output_file)
    next(reader)  # 跳过标题行
    for row in reader:
        cleaned_time = row[0].replace('180510 ', '')
        # 直接逐行写入CSV
        writer.writerow([cleaned_time, row[1], row[2]])
        # 同时打印结果
        print(','.join([cleaned_time, row[1], row[2]]))

运行这段代码后,你就能得到一个名为output.csv的文件,里面的内容就是你期望的结果啦~

内容的提问来源于stack exchange,提问作者shunmuga prakash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 07:32:33