搜索值并在值存在时追加

时间:2013-07-23 01:08:19

标签: python file list search append

您好我正在通过python 2.7中的csv文件运行搜索,但我在搜索中遇到错误。文件即时搜索大约有10000个条目和表格,这里是文件中的一个样本。有些Daysworkedthismonth没有包含值。

Name,Year Commenced,DaysWorkedthismonth
John,1990,4
Jane,1996,3
Josh,1990,
Jess,1990,2

我要做的是逐行搜索文件并匹配特定值。对于文件我搜索匹配1990的值并将该行附加到列表。我希望搜索该文件,并且只将该行附加到列表中,如果它还包含另一个列中的值。

I.e我想在文件示例中搜索说1990,但是如果daysworkedthismonth中有值,则只将该行附加到文件中。因此,当我搜索1990并且在daysworkedthismonth colummn中有一个值时,附加到该行的字符串应该只是

John,1990,4
Jess,1990,2

有没有进行这样的搜索?

到目前为止,我已经尝试了,但我感觉这是错误的

for row in a_csv:
 existing=  (for row in a_csv if '1990' in row)
 print existing

1 个答案:

答案 0 :(得分:0)

您可以使用行上的split来检查行中的字段数:

with open('csvFile', 'r') as a_csv:
    for row in a_csv:
        elems = row.split(',')
        if len(elems) == 3 and elems[1] == '1990': 
            print row