如果行包含特定字符串,则定义CSV文件行

时间:2012-08-19 06:01:20

标签: python csv

我已经学习Python两周了,在Python中读写CSV文件时我想知道一些事情。

我使用def代码输出:

def csv(filename):
  f = open(filename, 'rU') 
  lines = []
  for line in f:
    lines.append(line.rstrip('\n').split(','))
f.close()
return lines

以上代码的结果如下:

  

[['a','','','','',''],

     

['b','','','','',''],

     

['c','','','','',''],

     

['d','','','','',''],

     

['e','','','','',''],

     

['f','','','','',''],

     

['g','','','','','']]

假设我想要更改包含'a'的第一行的值。

我可以使用哪些代码来定义包含a的行?

1 个答案:

答案 0 :(得分:4)

首先,使用built-in csv parser

此代码将定义一个包含' a'

的行的python列表
import csv
rows = csv.reader(open('yourfile.csv', 'rb'), delimiter=' ', quotechar='|')
arows = [row for row in rows if 'a' in row]