删除Python中的重复项

时间:2012-03-08 22:00:25

标签: python

我的计划到目前为止

def RemoveDuplicates(text):
    result=[]
    used=set()
    for char in text:
        if char not in used:
            used.add(char)
            result.append(char)
    return ''.join(result)

text=input('Enter some text: ')
print(join(result))

我是Python的初学者,所以对我来说这是一项非常困难的任务。我知道这不会加起来,但我在哪里弄错了?

5 个答案:

答案 0 :(得分:1)

你从未真正调用你的RemoveDuplicates()函数。

替换:

text=input('Enter some text: ')
print(join(result))

使用:

print(RemoveDuplicates(input("Enter some text:" )))

答案 1 :(得分:1)

除了其他答案之外:如果您使用的是Python 2,则需要使用raw_input代替input

答案 2 :(得分:0)

这里有一些事情:

  1. 您定义了函数RemoveDuplicates,但从未实际调用过它。

  2. 您使用set(),但手动检查重复项。根据定义,一个集合将自动删除重复。

  3. 您还没有告诉我们您实际想要完成的任务。那样做,那么我们可以帮助你更多。

答案 3 :(得分:0)

虽然我不是专家,但你的功能看起来还不错。我认为问题在于你实际上并没有在任何地方调用它。请尝试这样称呼:print(RemoveDuplicates(text))

答案 4 :(得分:0)

一个小问题是你忘了打电话给你的功能! 此外,如果您使用的是Python 2.x,则需要使用raw_input收集用户输入。

两个小修补程序和您的代码正常工作:

def RemoveDuplicates(text):
    result=[]
    used=set()
    for char in text:
        if char not in used:
            used.add(char)
            result.append(char)
    return ''.join(result)

text = raw_input('Enter some text: ')
print(RemoveDuplicates(text))