有没有一种简单的方法可以使用python匹配csv文件中的值?

有没有一种简单的方法可以使用python匹配csv文件中的值?,python,csv,Python,Csv,有没有一种简单的方法可以在不使用正则表达式的情况下使用python匹配csv文件给定字段中的值?我在csv文件中有一个包含文本的字段。我希望编写一个python脚本,对名为file.csv的文件中包含文本“eagle”的所有字段执行操作 例如: import csv with open('file.csv', mode='r') as infile: reader = csv.reader(infile) for row in reader: m

有没有一种简单的方法可以在不使用正则表达式的情况下使用python匹配csv文件给定字段中的值?我在csv文件中有一个包含文本的字段。我希望编写一个python脚本,对名为file.csv的文件中包含文本“eagle”的所有字段执行操作

例如:

import csv

with open('file.csv', mode='r') as infile:
    reader = csv.reader(infile)
        for row in reader:
            match = row[3]
            if match == 'eagle':
                DO STUFF
上述代码不起作用。如何处理与字符串“eagle”匹配的所有行[3]值?谢谢你的帮助

编辑: 下面是“file.csv”中的一些示例行

tree,rock,10000,eagle
plant,stone,500,owl
seed,boulder,7000,crane
fruit,pebble,60000000,hawk

我希望匹配第1行和第4行中的第[3]行,然后执行一些操作。

如果没有数据包含“,”字符,则将行拆分为“,”

string.split(row,",")

如果没有数据包含“,”字符,将行拆分为“,”将起作用

string.split(row,",")

它在我的机器上工作

bash-4.1$ cat > file.csv
tree,rock,10000,eagle
plant,stone,500,owl
seed,boulder,7000,crane
fruit,pebble,60000000,hawk
bash-4.1$ python
Python 2.7 (r27:82500, Sep 16 2010, 18:03:06) 
[GCC 4.5.1 20100907 (Red Hat 4.5.1-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import csv
>>> 
>>> with open('file.csv', mode='r') as infile:
...     reader = csv.reader(infile)
...     for row in reader:
...         match = row[3]
...         if match == 'eagle':
...             print(repr(match))
... 
'eagle'

它在我的机器上工作

bash-4.1$ cat > file.csv
tree,rock,10000,eagle
plant,stone,500,owl
seed,boulder,7000,crane
fruit,pebble,60000000,hawk
bash-4.1$ python
Python 2.7 (r27:82500, Sep 16 2010, 18:03:06) 
[GCC 4.5.1 20100907 (Red Hat 4.5.1-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import csv
>>> 
>>> with open('file.csv', mode='r') as infile:
...     reader = csv.reader(infile)
...     for row in reader:
...         match = row[3]
...         if match == 'eagle':
...             print(repr(match))
... 
'eagle'

您粘贴的代码到底有什么不起作用?我的代码不会抛出错误。我的这段代码根本不执行。如果有帮助的话,第[3]行位于该行的末尾。此外,我希望匹配的字符串“eagle”是第[3]行中唯一的文本。您可以从csv文件中添加一些示例行吗?另外,如果您
打印'a'+第[3]行+'a'
,您会得到什么?
a
s是空的,因此您将在项目的开头和结尾处看到空白。您粘贴的代码到底有什么问题?我的代码不会抛出错误。我的这段代码根本不执行。如果有帮助的话,第[3]行位于该行的末尾。此外,我希望匹配的字符串“eagle”是第[3]行中唯一的文本。您可以从csv文件中添加一些示例行吗?另外,如果您
打印'a'+第[3]行+'a'
,您会得到什么?
a
s是空的,因此您可以在项目的开始和结束处看到空白。它也适用于我。试着打印
repr(第[3行])
看看它到底是什么。它对我也很有用。尝试打印
repr(第[3]行]
以查看它的实际内容。