【问题标题】:Write rows from list to specific columns将列表中的行写入特定列
【发布时间】:2020-04-05 07:02:37
【问题描述】:

我遇到了类似的问题,但无法满足我的需求。我正在阅读一个 csv,创建一个列表并将该列表附加到一个单独的 csv。

with open('in_table.csv', 'rb') as vo:
    next(vo)    # skip header row
    reader = csv.reader(vo)
    vo_list = list(reader)
print vo_list

with open('out_table.csv', 'ab') as f:
    cf = csv.writer(f)
    for row in vo_list:
        cf.writerow(row)

我需要从第二列而不是第一列开始编写列表,因为第一列将包含单独的信息。最简单的方法是什么?

实际上,我有另一个与第一个完全相同的输入 CSV,我需要将它们都放入输出文件中,总共 4 列。像这样:

Column1, join_count1, grid_id1, join_count2, grid_id2
Blah, 0, U24, 3, U24

【问题讨论】:

    标签: python-2.7 csv


    【解决方案1】:

    我会使用内置的 csv 包。另外,您将 CSV 文件作为二进制文件打开,这是故意的吗? CSV 根据定义应该是文本文件,但如果您的文件是二进制文件,请更正以下标志:

    import csv
    
    with open("out_table.csv", "a+") as out_file:
        writer = csv.writer(out_file)
        with open("in_table.csv") as in_file:
            reader = csv.reader(in_file)
            next(reader)  # skip the header
            for oid, join_count, grid_id in reader:
                writer.writerow([join_count, grid_id])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多