2016-12-13 39 views
-2

我想數一些大學籃球隊的勝利,我有一個csv file包含該數據。當我不管運行這段代碼是我曾嘗試它總是返回0計數ncaa籃球隊勝

import csv 

f = open("data.csv", 'r') 
data = list(csv.reader(f)) 


def ncaa(team): 
    count = 0 
    for row in data: 
     if row[2] == team: 
      count += 1 
    return count 

airforce_wins = ncaa("Air force") 
akron_wins = ncaa("Akron") 

print(akron_wins) 
+0

不知道data1.csv是什麼,反正可能很難給出準確的答案 –

回答

0

這會給你「1」。

import csv 

f = open("C:\\users/alex/desktop/data.csv", 'r') 
data = list(csv.reader(f)) 


def ncaa(team): 
    count = 0 
    for row in data: 
     if row[1] == team: #corrected index here 
      count += 1 
    return count 

airforce_wins = ncaa("Air force") 
akron_wins = ncaa("Akron") 

print(akron_wins) 

但是,我認爲你沒有正確計算勝利。您正在計算文件中某一行的出現次數,但由於每個團隊只有一行,因此對於任何團隊而言,您總會得到「1」。也許,你的勝利在另一個欄目中,當你找到你的團隊時,這是你需要查找的價值。

+0

是的,這是正確的,勝利在第4列 –

0

的函數定義之前,而不是試試這個:

import csv 
    with open("data1.csv", 'r') as f: 
     data = csv.reader(f,delimiter=',') 

我不認爲使用名單(reader_object)是正確的。

+0

我仍然收到0勝。 –

+0

發佈您的數據樣本,它會很容易解決:) – postoronnim

+0

我添加了該文件的下載鏈接http://www.filedropper.com/data_3 –