python - 从字符串列表中删除重复项

标签 python list

我正在尝试读取一个文件,制作一个单词列表,然后制作一个新的单词列表,删除重复的单词。 我无法将单词附加到新列表中。它说没有类型对象没有属性'append'

这是一段代码:

fh = open("gdgf.txt")
lst = list()

file = fh.read()
for line in fh:
    line = line.rstrip()

file = file.split()
for word in file:
    if word  in lst: 
        continue
    lst = lst.append(word)

print lst

最佳答案

python append 将返回 None。因此 set 将在此处帮助删除重复项。

In [102]: mylist = ["aa","bb","cc","aa"]

In [103]: list(set(mylist))
Out[103]: ['aa', 'cc', 'bb']

希望对你有帮助

在你的情况下

file = fh.read()

fh 之后将是一个空的生成器。所以你不能使用它,因为它已经被使用了。你必须对变量 file 进行操作

关于python - 从字符串列表中删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31634468/

相关文章:

python - 大型门户网站上的 web2py 或 grok(zope),

python - 代理背后的 PyQt + QtWebkit

javascript - 如何在模板中以 12h 格式渲染 Django Forms.TimeField?

c# - 如何复制 BlockingCollection 并编辑新的而不编辑源

r - 从 data.frame 行中提取字符列表值并 reshape 数据

python - 如何在 ReportLab platypus 中使用 BaseDocTemplate 呈现多个页面?

list - 要在R中列出的文本文件

list - 在 common Lisp 中将函数列表作为参数传递

list - 如何管理列表字符串来创建条件

python - Django 错误 : ValueError