Ich habe den folgenden Code:
url = 'abcdc.com'
print(url.strip('.com'))
Das hatte ich erwartet: abcdc
Ich habe: abcd
Jetzt habe ich
url.rsplit('.com', 1)
Gibt es einen besseren Weg?
Ich habe den folgenden Code:
url = 'abcdc.com'
print(url.strip('.com'))
Das hatte ich erwartet: abcdc
Ich habe: abcd
Jetzt habe ich
url.rsplit('.com', 1)
Gibt es einen besseren Weg?
strip
bedeutet nicht "diese Teilzeichenkette entfernen". x.strip(y)
behandelt y
als eine Menge von Zeichen und entfernt alle Zeichen in dieser Menge von beiden Enden der x
.
Sur Python 3.9 und neuere Versionen können Sie die removeprefix
y removesuffix
Methoden, um eine ganze Teilzeichenkette von beiden Seiten der Zeichenkette zu entfernen:
url = 'abcdc.com'
url.removesuffix('.com') # Returns 'abcdc'
url.removeprefix('abcdc.') # Returns 'com'
Der entsprechende Python-Erweiterungsvorschlag lautet PEP-616 .
Sur Python 3.8 und älter können Sie endswith
und Schneiden:
url = 'abcdc.com'
if url.endswith('.com'):
url = url[:-4]
Oder ein regulärer Ausdruck :
import re
url = 'abcdc.com'
url = re.sub('\.com$', '', url)
Beginnend in Python 3.9
können Sie verwenden removesuffix
stattdessen:
'abcdc.com'.removesuffix('.com')
# 'abcdc'
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.