2011-10-04 54 views
2

所以我這有極大的相humungous類,它的唯一的相關代碼:Python的產量發生器功能

def get_col_is_numeric(self, col_name): 
     "Returns an iterator with each cell length in the named column" 
     min(self.get_col_iter_is_numeric(col_name)) 

...我裝一些值從CSV文件的字典。
問題是即使列中的所有值都是數字,csvDictReaderCol.get_col_is_numeric('Ann_payrll')也會返回無 。 爲什麼yield會產生None值?

+0

使用一些調試工具。如果你沒有調試器,只要你遇到'yield None',就打印出所有的局部變量,參數等等。 –

+2

你的班級和'csv.DictReader'有什麼區別 - 你爲什麼要重新發明輪子? – katrielalex

+0

@katrielalex你是對的!一樣的。雖然我認爲我使用Python的早期版本(我認爲它在升級之前是2.3版本),並且cvs.DictReader當時在該Python版本上不可用。使用Python 2.6和cvs.DictReader可用。 –

回答

8

get_col_is_numeric缺少一個return語句,所以它返回None。

也是下一次,試着發佈實際的功能/方法,而不是整個班級。

+0

Doh。我沒有看到!謝謝!!! –