过滤具有整数列表的python输出

时间:2017-02-15 16:13:22

标签: python csv pycharm

我已将csv文件导入PyCharm并尝试从行中打印特定列表,并且到目前为止已成功。我将输出作为整数列表。我试图过滤列表并仅打印大于特定数字的整数(在这种情况下为500),但不知道如何以及在何处使用"如果"条件。

这是我的代码:

import csv

f = open('C:\Python36-32\movies.csv', encoding='utf')

csv_f = csv.reader(f)
next(csv_f, None)

for row in csv_f:
    content = row[3]

print(content)

f.close()

这是输出:

489
472
615
784
251
365
956
902
397
668
...

输出继续。

感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

import csv

f = open('C:\Python36-32\movies.csv', encoding='utf')

csv_f = csv.reader(f)
next(csv_f, None)

for row in csv_f:
    content = row[3]
    if content>500:
        print(content)

f.close()

答案 1 :(得分:1)

试试这个,

import csv

with open(filename, 'r') as f:
    reader = csv.reader(f, delimiter=',')
    next(reader, None)      # skip the headers

    for row in reader:
        if int(row[3]) > 500:
            print(row)

答案 2 :(得分:0)

您应该将if语句放在for循环中,并将print语句移动到循环中。

修改后的循环:

for row in csv_f:
    content = row[3]
    if content > 500:
        print(content)

另外,我还建议使用''文件操作的上下文管理器,而不是手动关闭它们。即。

with open('C:\Python36-32\movies.csv', encoding='utf', 'r') as f:
    csv_f = csv.reader(f)
    next(csv_f, None)