In Python 3 können Sie die Methode von PY4E - Python for Everybody verwenden.
Beide Probleme können wir lösen, indem wir die String-Methoden lower
, punctuation
und translate
verwenden. Translate
ist die subtilste Methode. Hier ist die Dokumentation für translate
:
Ihr_String.translate(Ihr_String.maketrans(fromstr, tostr, deletestr))
Ersetzen Sie die Zeichen in fromstr
durch das Zeichen an derselben Position in tostr
und löschen Sie alle Zeichen, die in deletestr
enthalten sind. Die Parameter fromstr
und tostr
können leere Strings sein, und der Parameter deletestr
kann weggelassen werden.
Sie können die "Punktuierung" sehen:
In [10]: import string
In [11]: string.punctuation
Out[11]: '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
Für Ihr Beispiel:
In [12]: Ihr_Str = "Hey, you - what are you doing here!?"
In [13]: Zeile = Ihr_Str.translate(Ihr_Str.maketrans('', '', string.punctuation))
In [14]: Zeile = Zeile.lower()
In [15]: Wörter = Zeile.split()
In [16]: print(Wörter)
['hey', 'you', 'what', 'are', 'you', 'doing', 'here']
Weitere Informationen finden Sie unter:
7 Stimmen
docs.python.org/library/re.html
13 Stimmen
Python's
str.split()
funktioniert auch ohne Argumente überhaupt