Skip to main content
 首页 » 编程设计

python之在 CSV 文件 PYTHON 的列中查找最大值

2025年05月04日14JustinYoung

我对编码还很陌生,而且我被困在当前的项目中。我有一个 .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 

我不断收到类似的信息:

9 

问题是它只返回最大的整数(恰好是 9),而它应该返回大约 15,000。我怀疑该程序只是将每个数字视为其自身的值...我怎样才能让它查看每个条目中的整个数字?

抱歉这个新问题。谢谢!

请您参考如下方法:

当前您正在比较 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 

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

    answer = max(reader, key=lambda column: int(column[14].replace(',',''))) 
print answer