如何在CSV文件中打印在特定列中具有特定值的特定行?

时间:2018-10-17 17:50:08

标签: python csv

我是python的新手。我有一个CSV文件,我想从中打印特定的行,如果可以给我指导,我将不胜感激。例如在表格下面,如果记录号为2,我想打印一行: This image shows an example of my case

我有以下代码作为启动器,可以打印出标题:

with open(filename, "r") as f:
    reader = csv.reader(f, delimiter="\t")
    first = next(reader)
    print(first[0].split(','))
    for row in filename:
        print()

谢谢!

2 个答案:

答案 0 :(得分:0)

您的示例代码似乎有些混乱,我认为文件实际上是逗号分隔而不是制表符分隔的。否则,您无需执行first[0].split(',')

假设是这种情况,也许类似的事情会起作用:

with open(filename, "r") as f:
    reader = csv.reader(f)
    # skip header row
    header = next(reader)
    for row in reader:
        if int(row[0]) == 2:
            print(row)

如果您要查找特定的行号,则可以使用enumerate对行进行计数并在找到正确的行时进行打印。

答案 1 :(得分:-1)

在for循环中,检查第0列的记录号是否为== 2:

for row in file:
    if row[0] == 2:
        print(row)