在csv文件PYTHON的列中查找最大值

1 python csv

我对编码很新,而且我仍然坚持当前的项目.我有一个.csv文件,而不是使用电子表格,我正在尝试编写一个python程序来查找特定列的最大值.到目前为止,我有以下内容:

import csv

with open('american_colleges__universities_1993.csv', 'rU') as f:
    reader = csv.reader(f)
    answer = 0
    for column in reader :
        answer = 0
        for i in column[14]:
            if i>answer:
                answer = i
print answer
Run Code Online (Sandbox Code Playgroud)

我一直得到类似的东西:

9
Run Code Online (Sandbox Code Playgroud)

问题是,它只返回最大的整数(恰好是9),当它应该返回15,000这样的东西时.我怀疑该程序只是将每个数字视为自己的值......我怎样才能看到每个数字中的整个数字?

对不起,对于新问题.谢谢!

ACh*_*ion 5

目前,您正在比较每个字符column[14]并将词法最大字符设置为answer.假设你想要算术比较整个column[14]你需要replace逗号''并转换为int,例如:

with open('american_colleges__universities_1993.csv', 'rU') as f:
    reader = csv.reader(f)
    next(reader)     # Skip header row
    answer = max(int(column[14].replace(',', '')) for column in reader)
print answer
Run Code Online (Sandbox Code Playgroud)

如果您需要具有最大值的整行,column[14]您可以使用以下key参数max:

    answer = max(reader, key=lambda column: int(column[14].replace(',','')))
print answer
Run Code Online (Sandbox Code Playgroud)