列表迭代只返回最后一个值

嘿伙计们。我在这里做一个非常特别的项目。但我一直遇到一个问题。我正在尝试将项目从一个单词列表添加到另一个单词列表(过滤原因)。但当程序运行时,列表最终只有另一个列表中的最后一个值,而我知道有更多的值。我只是把字母从数字中过滤出来。
以下是我的代码:

选择 | 换行 | 行号
  1. def cleanlist(wordlist):
  2.     for word in wordlist:
  3.         lex = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ "
  4.         for i in range(0,len(lex)):
  5.             word = word.replace(lex[i], "")
  6.             if len(word) > 0:
  7.                 clean_list = []
  8.                 clean_list.append(word)
  9.         print(clean_list)
  10.     f.write(str(clean_list))
  11.  
  12.  
# 回答1


每次都会创建一个新的空列表,因此只包含该条目。请参见"if len(Word)>0:"行下面的下一行。此外,还可以使用"".Join()将列表转换为字符串。

标签: python

添加新评论