Maison > Article > développement back-end > Description détaillée du module string.py en Python
Cet article présente principalement les informations pertinentes sur la description détaillée du module string.py dans Python L'introduction dans l'article est très détaillée et a une certaine valeur de référence pour tous les amis qui en ont besoin. jetez un oeil ci-dessous.
1. Utilisation
Constante de chaîne :
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)
Résultat
abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789 0123456789abcdefABCDEF 01234567 !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&'()*+,- ./:;<=>?@[\]^_`{|}~
2. Classe de modèle :
En fait, la classe Template peut être comparée à l'utilisation de chaîne formatée et de la méthode de chaîne objet format()
, ce qui peut aider davantage. compris. Tout d'abord, créez un nouveau fichier python : string_template.py
,
puis écrivez-y le contenu suivant :
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))
Ensuite, en python Saisissez dans la ligne de commande :
$ python string_template.py
Le résultat
TEMPLATE: Variable : foo Escape : $ Variable in text: fooiable INTERPOLATION: Variable : foo Escape : % Variable in text: fooiable FORMAT: Variable : foo Escape : {}
peut être vu. Les trois peuvent avoir pour effet de formater des chaînes. C'est juste que les modificateurs des trois sont différents. L'avantage de la classe Template est qu'elle peut hériter de la classe via , personnaliser ses modificateurs après instanciation, et vous pouvez également utiliser des expressions régulièresvariables >Définition.
Tel que l'exemple string_template_advanced.py :
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))Tout d'abord, expliquez le fichier python ci-dessus. Une classe MyTemplate est définie à l'intérieur, qui hérite de la classe Template de string, puis
surcharge ses deux champs : Le délimiteur est le modificateur, désormais spécifié comme '%' au lieu du précédent '$' . Ensuite, idpattern est la spécification de format de la variable.
Résultat
$ python string_template_advanced.py Modified ID pattern: Delimiter : % Replaced : replaced Igonred : %notunderscoredPourquoi le soulignement n'est-il pas remplacé ? La raison en est que lorsque nous définissons la classe, nous spécifions que le trait de soulignement '_' doit apparaître dans le modèle d'identification, et le
nom de la variable n'a pas de trait de soulignement, il ne peut donc pas être remplacé.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!