Computerwissenschaften

Die Kraft der String-Vorlagen von Python

Die Kraft der String-Vorlagen von Python

Python ist eine interpretierte, objektorientierte Programmiersprache auf hoher Ebene . Es ist leicht zu erlernen, da die Syntax die Lesbarkeit betont, wodurch die Kosten für die Programmwartung reduziert werden. Viele Programmierer lieben die Arbeit mit Python, da das Testen und Debuggen ohne den Kompilierungsschritt schnell vonstatten geht.

 

Python Web Templating

Vorlagen, insbesondere Webvorlagen, stellen Daten in Formen dar, die normalerweise für einen Betrachter lesbar sind. Die einfachste Form einer Vorlagen-Engine ersetzt Werte in die Vorlage, um die Ausgabe zu erzeugen.

Neben den Zeichenfolgenkonstanten und den veralteten Zeichenfolgenfunktionen, die auf Zeichenfolgenmethoden umgestellt wurden, enthält das Python-Zeichenfolgenmodul auch Zeichenfolgenvorlagen. Die Vorlage selbst ist eine Klasse, die eine Zeichenfolge als Argument erhält. Das von dieser Klasse instanziierte Objekt wird als Vorlagenzeichenfolgenobjekt bezeichnet. Vorlagenzeichenfolgen wurden erstmals in Python 2.4 eingeführt. Während Zeichenfolgenformatierungsoperatoren das Prozentzeichen für Ersetzungen verwendeten, verwendet das Vorlagenobjekt Dollarzeichen.

  • $$ ist eine Escape-Sequenz; es wird durch ein einzelnes $ ersetzt .
  • $ benennt einen Ersetzungsplatzhalter, der einem Zuordnungsschlüssel von entspricht. Standardmäßig muss eine Python-Kennung buchstabieren. Das erste Nicht-Bezeichner-Zeichen nach dem $ -Zeichen beendet diese Platzhalterspezifikation.
  • $ {} entspricht $ . Dies ist erforderlich, wenn gültige Bezeichnerzeichen dem Platzhalter folgen, aber nicht Teil des Platzhalters sind, z. B. $ {noun} ification.

Außerhalb dieser Verwendungen des Dollarzeichens wird bei jedem Auftreten von $ ein ValueError ausgelöst. Folgende Methoden stehen über Vorlagenzeichenfolgen zur Verfügung:

  • Klasse String. Vorlage ( Vorlage ): Der Konstruktor verwendet ein einzelnes Argument, nämlich die Vorlagenzeichenfolge.
  • Ersetzen ( Zuordnung, ** Schlüsselwörter ): Methode, die die Zeichenfolgenwerte ( Zuordnung) durch die Zeichenfolgenwerte der Vorlage ersetzt. Die Zuordnung ist ein wörterbuchähnliches Objekt, auf dessen Werte als Wörterbuch zugegriffen werden kann. Wenn das Schlüsselwortargument verwendet wird, repräsentiert es Platzhalter. Wenn sowohl Mapping als auch Schlüsselwörter verwendet werden, hat letzteres Vorrang. Wenn ein Platzhalter in der Zuordnung oder in Schlüsselwörtern fehlt , wird ein KeyError ausgelöst.
  • Sicherer _ Ersatz ( Zuordnung, ** Schlüsselwörter ): Funktioniert ähnlich wie Ersatz (). Wenn jedoch ein Platzhalter in der Zuordnung oder in Schlüsselwörtern fehlt , wird standardmäßig der ursprüngliche Platzhalter verwendet, wodurch der KeyError vermieden wird. Außerdem gibt jedes Auftreten von „$“ ein Dollarzeichen zurück.

Vorlagenobjekte haben auch ein öffentlich verfügbares Attribut:

  • Vorlage ist das Objekt, das an das Vorlagenargument des Konstruktors übergeben wird. Während der schreibgeschützte Zugriff nicht erzwungen wird, ist es am besten, dieses Attribut in Ihrem Programm nicht zu ändern.

Die folgende Beispiel-Shell-Sitzung dient zur Veranschaulichung von Vorlagenzeichenfolgenobjekten.


>>> aus der Zeichenfolgenimportvorlage

 

>>> s=Vorlage ('$ wann, $ wer $ Aktion $ was.')

 

>>> s.substitute (wann='Im Sommer', wer='John', Aktion='Getränke', was='Eistee') 'Im Sommer trinkt John Eistee.'

 

>>> s.substitute (wann='Nachts', wer='Jean', Aktion='isst', was='Popcorn') 'Nachts isst Jean Popcorn.'

 

>>> s.template '$ when, $ who $ action $ what.'

 

>>> d=dict (when='im Sommer')

 

>>> Vorlage ('$ who $ action $ what $ when'). Safe_substitute (d) '$ who $ action $ what in the summer'

Similar Posts

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.