0

重複した文字を削除する方法はありますか? たとえば、「hello」と入力すると、出力は「helo」になります。別の例は「overflow」で、出力は「overflw」になります。別の例「paragraphs」の場合、出力は「parghs」になります。

私が試してみました

def removeDupes(mystring):
    newStr = ""
    for ch in string:
        if ch not in newStr:
            newStr = newStr + ch
    return newStr
4

3 に答える 3

1

はい、セットと呼ばれるもので:

unique = set()

[ unique.add(c) for c in 'stringstring' ]
于 2013-10-28T01:34:01.247 に答える
1

私はこれに使用collections.OrderedDictします:

>>> from collections import OrderedDict
>>> data = "paragraphs"
>>> print "".join(OrderedDict.fromkeys(data))
parghs
于 2013-10-28T01:34:12.793 に答える
1

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
于 2013-10-28T01:32:53.233 に答える