Entfernen Sie alle Duplikate aus einer bestimmten Zeichenfolge in Python
Wir erhalten eine Zeichenfolge und müssen alle Duplikate daraus entfernen. Was wird ausgegeben, wenn die Reihenfolge der Zeichen wichtig ist?
Beispiele:
Eingabe: geeksforgeeks Ausgabe: efgkos
Dieses Problem ist bereits gelöst. Weitere Informationen finden Sie unter Entfernen aller Duplikate aus einer bestimmten Zeichenfolge .
Methode 1:
from
collections
import
OrderedDict
def
removeDupWithoutOrder(
str
):
return
"".join(
set
(
str
))
def
removeDupWithOrder(
str
):
return
"".join(OrderedDict.fromkeys(
str
))
if
__name__
=
=
"__main__"
:
str
=
"geeksforgeeks"
(
"Without Order = "
,removeDupWithoutOrder(
str
))
(
"With Order = "
,removeDupWithOrder(
str
))
Ausgabe:
Ohne Bestellung = egfkosr Mit Order = geksfor
Methode 2:
def
removeDuplicate(
str
):
s
=
set
(
str
)
s
=
"".join(s)
(
"Without Order:"
,s)
t
=
""
for
i
in
str
:
if
(i
in
t):
pass
else
:
t
=
t
+
i
(
"With Order:"
,t)
str
=
"geeksforgeeks"
removeDuplicate(
str
)
Ausgabe:
Ohne Bestellung: Rofgeks Mit Bestellung: geksfor
Was machen OrderedDict und fromkeys()?
Ein OrderedDict ist ein Wörterbuch, das sich an die Reihenfolge der Schlüssel erinnert, die zuerst eingefügt wurden. Wenn ein neuer Eintrag einen vorhandenen Eintrag überschreibt, bleibt die ursprüngliche Einfügeposition unverändert.
Zum Beispiel siehe unten Code-Snippet:
from
collections
import
OrderedDict
ordinary_dictionary
=
{}
ordinary_dictionary[
'a'
]
=
1
ordinary_dictionary[
'b'
]
=
2
ordinary_dictionary[
'c'
]
=
3
ordinary_dictionary[
'd'
]
=
4
ordinary_dictionary[
'e'
]
=
5
(ordinary_dictionary)
ordered_dictionary
=
OrderedDict()
ordered_dictionary[
'a'
]
=
1
ordered_dictionary[
'b'
]
=
2
ordered_dictionary[
'c'
]
=
3
ordered_dictionary[
'd'
]
=
4
ordered_dictionary[
'e'
]
=
5
(ordered_dictionary)
fromkeys() erstellt ein neues Wörterbuch mit Schlüsseln aus seq und Werten, die auf value gesetzt sind, und gibt eine Liste der Schlüssel zurück. fromkeys (seq [, value]) ist die Syntax für die fromkeys() -Methode.
Parameter:
- seq: Dies ist die Liste der Werte, die für die Vorbereitung der Wörterbuchschlüssel verwendet werden.
- value: Dies ist optional. Wenn angegeben, wird der Wert auf diesen Wert gesetzt.
Zum Beispiel siehe unten Code-Snippet:
from
collections
import
OrderedDict
seq
=
(
'name'
,
'age'
,
'gender'
)
dict
=
OrderedDict.fromkeys(seq)
(
str
(
dict
))
dict
=
OrderedDict.fromkeys(seq,
10
)
(
str
(
dict
))
Dieser Artikel wurde von Shashank Mishra (Gullu) verfasst . Wenn Ihnen GeeksforGeeks gefällt und Sie einen Beitrag leisten möchten, können Sie auch einen Artikel mit Contrib.geeksforgeeks.org schreiben oder Ihren Artikel an Contribute@geeksforgeeks.org senden . Sehen Sie sich Ihren Artikel auf der GeeksforGeeks-Hauptseite an und helfen Sie anderen Geeks.
Bitte schreiben Sie Kommentare, wenn Sie etwas Falsches finden oder weitere Informationen zu dem oben diskutierten Thema teilen möchten.