python:将整行插入列表

时间:2010-07-27 22:38:04

标签: python csv

import csv

with open('thefile.csv', 'rb') as f:
  data = list(csv.reader(f))
  import collections
  counter = collections.defaultdict(int)

  for row in data:
        counter[row[10]] += 1


with open('/pythonwork/thefile_subset11.csv', 'w') as outfile:
    writer = csv.writer(outfile)
    sample_cutoff=500
    b[]
    for row in data:
        if counter[row[10]] >= sample_cutoff:
           writer.writerow(row)

除了将数据写入文件之外,我还想将其插入到列表b []

我可以b.insert[row]吗?

3 个答案:

答案 0 :(得分:2)

它是b.append(row),但是否则是。而不是b[]你需要b = []。另一种方法是首先制作列表,然后将列表的每个元素写入文件:

b = [row for row in data if counter[row[10]] >= sample_cutoff]
map(writer.writerow, b)

答案 1 :(得分:1)

它是list.insert(index,item)或list.append(item)。

此外,b[]是名称错误语法错误。我想你的意思是b = []

答案 2 :(得分:1)

是的,b = []会支持insert方法。语法如下。

b.insert(postiion_int, element)