Es gibt zum Beispiel eine Zeichenfolge. EXAMPLE
.
Wie kann ich das mittlere Zeichen entfernen, dh daraus entfernen M
? Ich brauche den Code nicht. Ich möchte es wissen:
- Beenden Zeichenfolgen in Python mit einem Sonderzeichen?
- Was ist ein besserer Weg - alles von rechts nach links zu verschieben, beginnend mit dem mittleren Zeichen ODER der Erstellung einer neuen Zeichenfolge und nicht das Kopieren des mittleren Zeichens?
Antworten:
In Python sind Zeichenfolgen unveränderlich, daher müssen Sie eine neue Zeichenfolge erstellen. Sie haben einige Möglichkeiten, wie Sie die neue Zeichenfolge erstellen können. Wenn Sie das 'M' entfernen möchten, wo immer es erscheint:
Wenn Sie das zentrale Zeichen entfernen möchten:
Sie haben gefragt, ob Zeichenfolgen mit einem Sonderzeichen enden. Nein, Sie denken wie ein C-Programmierer. In Python werden Zeichenfolgen mit ihrer Länge gespeichert, sodass jeder Bytewert, einschließlich
\0
, in einer Zeichenfolge angezeigt werden kann.quelle
from __future__ import division
am Anfang Ihres Skripts Python der Version 2.X wie Version 3.X verhalten""
impliziert keine leere Zeile. Wenn Sie es in eine Liste einfügen und mit Zeilenumbrüchen verbinden, wird eine leere Zeile erstellt, aber es gibt viele andere Stellen, an denen Sie möglicherweise eine leere Zeichenfolge verwenden, die dies nicht tut.Dies ist wahrscheinlich der beste Weg:
Mach dir keine Sorgen über das Verschieben von Charakteren und so. Der meiste Python-Code findet auf einer viel höheren Abstraktionsebene statt.
quelle
M
ist möglicherweise nicht eindeutig. In diesem Fall werden dadurch alleM
s ersetzt, oder?n
Vorkommen ersetzen möchten , verwenden Sieoriginal.replace("M", "", n)
.So ersetzen Sie eine bestimmte Position:
So ersetzen Sie ein bestimmtes Zeichen:
quelle
l
. Dann sollte für den ersten Teil die Einschränkung für pos seinl-1 > pos >= 0
.Saiten sind unveränderlich. Sie können sie jedoch in eine veränderbare Liste konvertieren und die Liste nach dem Ändern wieder in eine Zeichenfolge konvertieren.
Sie können auch eine neue Zeichenfolge erstellen, wie andere gezeigt haben, indem Sie alles außer dem gewünschten Zeichen aus der vorhandenen Zeichenfolge übernehmen.
quelle
str.replace
Methode anwenden?Sie können nicht, weil Zeichenfolgen in Python unveränderlich sind .
Nein. Sie ähneln Listen von Zeichen. Die Länge der Liste definiert die Länge der Zeichenfolge, und kein Zeichen fungiert als Abschlusszeichen.
Sie können die vorhandene Zeichenfolge nicht ändern, daher müssen Sie eine neue erstellen, die alles außer dem mittleren Zeichen enthält.
quelle
Verwenden Sie die
translate()
Methode:quelle
None
zu entfernen scheint nicht zu funktionieren):translate( str.maketrans("<>", " ") )
str.maketrans( "", "", "<>")
undstr.maketrans( {"<":None,">":None })
'EXAMPLE'.translate({ord("M"): None})
UserString.MutableString
Veränderlicher Weg:
quelle
So entfernen Sie ein Zeichen aus einer Zeichenfolge: In diesem Beispiel wird ein Kartenstapel als Zeichen in einer Zeichenfolge dargestellt. Eine davon wird gezeichnet (Zufallsmodul für die Funktion random.choice () importieren, die ein zufälliges Zeichen in der Zeichenfolge auswählt). Eine neue Zeichenfolge, cardLeft, wird erstellt, um die verbleibenden Karten der Zeichenfolgenfunktion replace () aufzunehmen, wobei der letzte Parameter angibt, dass nur eine "Karte" durch die leere Zeichenfolge ersetzt werden soll ...
quelle
Ich habe das irgendwo hier gesehen .
quelle
Folgendes habe ich getan, um das "M" herauszuschneiden:
quelle
Wenn Sie Zeichen in einer Zeichenfolge löschen / ignorieren möchten und beispielsweise diese Zeichenfolge haben,
[11: L: 0]
Nehmen wir an, Sie verwenden Anforderungen aus einer Web-API-Antwort oder ähnlichem, z. B. einer CSV-Datei
Schleife und entfernen Sie unerwünschte Zeichen:
Optionale Aufteilung, und Sie können die Werte einzeln lesen:
Jetzt ist der Zugriff auf jeden Wert einfacher:
Dies wird gedruckt
quelle
So löschen Sie ein
char
oder einsub-string
einmaliges (nur das erste Vorkommen):HINWEIS: Hier
1
kannint
für die Anzahl der Vorkommen, die Sie ersetzen möchten, eine beliebige ersetzt werden.quelle
Sie können einfach das Listenverständnis verwenden.
Angenommen, Sie haben die Zeichenfolge:
my name is
und möchten das Zeichen entfernenm
. Verwenden Sie den folgenden Code:quelle
quelle
Ein anderer Weg ist mit einer Funktion,
Im Folgenden finden Sie eine Möglichkeit, alle Vokale aus einer Zeichenfolge zu entfernen, indem Sie einfach die Funktion aufrufen
quelle
Strings sind in Python unveränderlich, sodass beide Optionen im Grunde dasselbe bedeuten.
quelle