2017-02-05 134 views
-1

我正在測試一個函數,它通過打開文件來返回一個單詞列表。但不是調用文件,我只是嘗試用python閱讀它。當我測試這個函數時出現以下錯誤:「在單行文件上返回錯誤的值」在這段代碼中有什麼錯誤?我的第一個是替換值不正確或我的循環可能是錯誤的,但我不知道在哪裏。功能正文中找不到錯誤

PS:這個代碼是通過記住刪除了新行來完成的。 在此先感謝。任何提示都會有用。

這是我的代碼:

def read_words(words_file): 
    words_list = [] 
    words_list = words_file.readlines() 
    for line in words_file: 
     words_list.append(line.replace("\n", "")) 
    return words_list 
+0

該函數本身似乎沒問題(除非您可能需要省略第三行)。我想這個錯誤一定是因爲別的地方。 – Shiping

回答

0

迭代如果你輸入的每行有多個單詞,像這會更有意義:

def read_words(words_file): 
    words_list = [] 
    for line in words_file: 
     words_list = words_list + line.split() 
    return words_list 
0

要附加到相同的變量(words_list),您通過

def read_words(words_file): 
    words_list = [] 
    lines = words_file.readlines() 

    for line in lines: 
     words_list.extend(line.split()) 

    return words_list 
+0

但這仍然是剝離的行列表,而不是單詞。 –

+0

每行有多個單詞嗎? –

+0

@ Jean-FrançoisFabre謝謝你的提醒,我編輯了代碼 – TheEpicMelon