Maison  >  Article  >  développement back-end  >  Qu'est-ce qu'un modèle de chaîne Python

Qu'est-ce qu'un modèle de chaîne Python

藏色散人
藏色散人original
2019-01-18 09:20:234266parcourir

Python est un langage de programmation de haut niveau interprété et orienté objet. Il est facile à apprendre car sa syntaxe met l'accent sur la lisibilité, ce qui réduit les coûts de maintenance du programme. De nombreux programmeurs préfèrent utiliser Python car il n’y a pas d’étape de compilation et les tests et le débogage sont effectués rapidement.

Qu'est-ce qu'un modèle de chaîne Python

Modèles Web Python

Les modèles, en particulier les modèles de pages Web, représentent les données sous une forme généralement destinée à être lisible par le spectateur. Dans sa forme la plus simple, un moteur de modèle remplace les valeurs par un modèle pour produire une sortie.

En plus des constantes de chaîne et des fonctions de chaîne obsolètes (déplacées vers les méthodes de chaîne), le module de chaîne de Python comprend également des modèles de chaîne. Le modèle lui-même est une classe qui reçoit une chaîne en paramètre. Les objets instanciés à partir de cette classe sont appelés objets de chaîne de modèle. Les chaînes de modèles ont été introduites pour la première fois dans Python 2.4. Là où l'opérateur de formatage de chaîne utilise le signe pourcentage pour la substitution, l'objet modèle utilise le signe dollar.

$$ est une séquence d'échappement ; elle est remplacée par un $.

$ 082e3cc0cd3fd9f3e30e119d8ed83388 nomme un espace réservé de remplacement qui correspond au mot-clé de mappage de 082e3cc0cd3fd9f3e30e119d8ed83388. Par défaut, 082e3cc0cd3fd9f3e30e119d8ed83388 doit épeler les identifiants Python. Le premier caractère non identifiant après le caractère $ termine cette spécification d'espace réservé.

$ {082e3cc0cd3fd9f3e30e119d8ed83388} est équivalent à $ 082e3cc0cd3fd9f3e30e119d8ed83388. Il est requis lorsqu'un caractère d'identification valide suit un espace réservé mais ne fait pas partie de l'espace réservé, tel que ${noun}ification.

Toute apparition de $ en dehors de l'utilisation de ces signes dollar entraînera une ValueError. Les méthodes disponibles via les chaînes de modèle sont les suivantes :

chaîne de classe.

Template (template) : Le constructeur prend un seul paramètre, la chaîne du modèle.

Replace (mapping, **mots-clés) : Méthode utilisée pour remplacer une valeur de chaîne de modèle par une valeur de chaîne (mapping). Les cartes sont des objets de type dictionnaire dont les valeurs sont accessibles sous forme de dictionnaires. Si le paramètre mots-clés est utilisé, il représente des espaces réservés. Dans le cas de l’utilisation de mappages et de mots-clés, ces derniers sont prioritaires. Si l'espace réservé est absent de la carte ou du mot-clé, KeyError est renvoyé.

Safe_substitute(mapping, **mots-clés) : Fonction similaire à substitut(). Cependant, si un espace réservé est manquant dans le mappage ou le mot-clé, l'espace réservé d'origine est utilisé par défaut, évitant ainsi KeyError. De plus, toute occurrence de « $ » renvoie un signe dollar.

Les objets Template ont également une propriété accessible au public :

Template est l'objet transmis au paramètre de modèle du constructeur. Bien que l'accès en lecture seule ne soit pas imposé, il est préférable de ne pas modifier cette propriété au sein d'un programme.

L'exemple de session shell suivant illustre des objets de chaîne de modèle.

>>> from string import Template
>>> s = Template('$when, $who $action $what.')
>>> s.substitute(when='In the summer', who='John', action='drinks', what='iced tea') 'In the summer, John drinks iced tea.'
>>> s.substitute(when='At night', who='Jean', action='eats', what='popcorn') 'At night, Jean eats popcorn.'
>>> s.template '$when, $who $action $what.'
>>> d = dict(when='in the summer')

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn