Heim > Artikel > Backend-Entwicklung > Einführung in das Python-Modul string.py
import string
print(string.ascii_lowercase)
print(string. ascii_uppercase )
print(string.ascii_letters)
print(string.digits)
print(string.hexdigits)
print(string.octdigits)
print ( string.punctuation)
print(string.printable)
Ergebnis
abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789 0123456789abcdefABCDEF 01234567 !"#$%&'()*+,-./:;96b4fef55684b9312718d5de63fb7121?@[\]^_`{|}~ 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&'()*+,- ./:;96b4fef55684b9312718d5de63fb7121?@[\]^_`{|}~
1.Template-Klasse:
Tatsächlich kann die Template-Klasse mit der Verwendung eines formatierten Strings und der format()-Methode des String--Objekts verglichen werden, was hilfreich sein kann. besseres Verständnis. Erstellen Sie zunächst eine neue Python-Datei: string_template.py,
und schreiben Sie dann den folgenden Inhalt hinein:
import string values = {'var': 'foo'} t = string.Template(""" Variable : $var Escape : $$ Variable in text: ${var}iable """) print('TEMPLATE:', t.substitute(values)) s = """ Variable : %(var)s Escape : %% Variable in text: %(var)siable """ print('INTERPOLATION:', s % values) s = """ Variable : {var} Escape : {{}} Variable in text: {var}iable """ print('FORMAT:', s.format(**values))
Geben Sie dann in die Python-Befehlszeile ein:
$ python string_template.py
Ergebnisse
TEMPLATE: Variable : foo Escape : $ Variable in text: fooiable INTERPOLATION: Variable : foo Escape : % Variable in text: fooiable FORMAT: Variable : foo Escape : {}
Sie können sehen, dass alle drei die Wirkung von Formatierungszeichenfolgen haben können. Es ist nur so, dass die Modifikatoren der drei unterschiedlich sind. Das Gute an der Template-Klasse ist, dass sie die Klasse über erben und nach der Instanziierung ihre Modifikatoren und das Namensformat der -Variable selbst definieren kann kann auch Definition eines regulären Ausdrucks sein. Zum Beispiel string_template_advanced.py Beispiel:
import string
class MyTemplate(string.Template): delimiter = '%' idpattern = '[a-z]+_[a-z]+' template_text = ''' Delimiter : %% Replaced : %with_underscore Igonred : %notunderscored ''' d = { 'with_underscore': 'replaced', 'notunderscored': 'not replaced', } t = MyTemplate(template_text) print('Modified ID pattern:') print(t.safe_substitute(d))Erklären Sie zunächst die obige Python-Datei. Darin ist eine Klasse MyTemplate definiert, die die Template-Klasse von string erbt und dann
Ergebnis
$ python string_template_advanced.py Modified ID pattern: Delimiter : % Replaced : replaced Igonred : %notunderscoredWarum wird nicht unterstrichen nicht ersetzt? Der Grund dafür ist, dass wir beim Definieren der Klasse angeben, dass der Unterstrich „_“ im ID-Muster erscheinen soll und der
Variablenname keinen Unterstrich hat und daher nicht ersetzt werden kann.
Das obige ist der detaillierte Inhalt vonEinführung in das Python-Modul string.py. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!