2015-12-13 84 views
1

我得到以下錯誤'TypeError:類型'NoneType'的對象對於下面的程序沒有len()'。爲什麼我不能遍歷列表並將其與另一個列表進行比較?TypeError:類型'NoneType'的對象在遍歷列表時沒有len()

word_list = list() 

while True: 
    file_name = raw_input('Enter file name: ') 
    if len(file_name) < 1: exit() 
    try: 
     file = open(file_name) 
     break 

    except: 
     print 'Please enter a valid file name.' 
     continue 

for line in file: 
    line = line.rstrip() 
    words = line.split() 
    for word in words: 
     if len(word_list) <1: 
      word_list = word_list.append(word) 

     else: 
      if not word in word_list: 
       word_list = word_list.append(word) 

word_list = word_list.sort() 
print word_list 
+0

簡要說明:'append()'將對象改變位置並返回'None'。不要將'append()'操作的結果保存回同一個引用。只需要執行'word_list.append(word)'操作。 – TigerhawkT3

回答

1

list.append返回None

以下行:

word_list = word_list.append(word) 

應改爲:

word_list.append(word) 

否則,word_list成爲None導致TypeError以後。

相關問題