有没有办法删除重复的字符?例如,如果我们输入“hello”,输出将是“helo”;另一个例子是“溢出”,输出将是“溢出”;另一个示例“段落”,输出将是“parghs”。
我努力了
def removeDupes(mystring):
newStr = ""
for ch in string:
if ch not in newStr:
newStr = newStr + ch
return newStr
有没有办法删除重复的字符?例如,如果我们输入“hello”,输出将是“helo”;另一个例子是“溢出”,输出将是“溢出”;另一个示例“段落”,输出将是“parghs”。
我努力了
def removeDupes(mystring):
newStr = ""
for ch in string:
if ch not in newStr:
newStr = newStr + ch
return newStr
更改string
为mystring
:
def removeDupes(mystring):
newStr = ""
for ch in mystring:
if ch not in newStr:
newStr = newStr + ch
return newStr
print removeDupes("hello")
print removeDupes("overflow")
print removeDupes("paragraphs")
>>>
helo
overflw
parghs
是的,有一个叫做集合的东西:
unique = set()
[ unique.add(c) for c in 'stringstring' ]
我会用collections.OrderedDict
这个:
>>> from collections import OrderedDict
>>> data = "paragraphs"
>>> print "".join(OrderedDict.fromkeys(data))
parghs