テンプレートは間違いなく優れたもので、文字列の形式を修正して再利用できます。同時に、Template を使用すると、開発者は文字列の形式と内容を個別に検討できるため、開発者へのプレッシャーが事実上軽減されます。
テンプレートは文字列内のクラスに属しているため、それを使用したい場合は、次の方法で呼び出すことができます
from string import Template
テンプレートには特別な識別子$があり、次のルールがあります:
その主な実装メソッドは$です。 xxx、xxx は Python の命名規則を満たす文字列です。つまり、数字で始めることやキーワードにすることはできません。
$xxx が他の文字列と接触する必要がある場合は、xxx を {} で囲むことができます (以前は '()' が使用されていたようです。私の参考書にはこう書いてありますが、現在のバージョンでは '{}' のみを使用する必要があります)。たとえば、aaa${xxx}aaa
テンプレートには、substituteとsafe_substituteという2つの重要なメソッドがあります。
どちらのメソッドもパラメータを取得することで文字列を返すことができます
>>s=Template(There $a and $b) >>print s.subtitute(a='apple',b='banana') There apple and banana >>print s.safe_substitute(a='apple',b='banbana') There apple and banbana
また、次のように辞書を取得してデータを直接渡すこともできます。方法
>>s=Template(There $a and $b) >>d={'a':'apple','b':'banbana'} >>print s.substitute(d) There apple and banbana
それらの違いは、欠落しているパラメーターの処理方法にあります。
テンプレートは、最初にテンプレートを通じて文字列を初期化することによって実装されます。これらの文字列にはキーが 1 つずつ含まれています。置換または安全なサブサイトを呼び出すことにより、キーの値がメソッドで渡されたパラメータと照合され、指定された場所に文字列がインポートされます。この方法の利点の 1 つは、キーが正しい限り、「%s」などを出力する必要がなく、値を正しく挿入できることです。こうすることで、大量のデータを挿入するときに安心できます。しかし、そのような怠惰な方法があったとしても、入力されたキーが 1 つ少ない場合はどうなるでしょうか。
置換は、キーが入力されていない場合、確実にエラーが報告される深刻な方法です。見栄えは悪くなりますが、問題点は見つかります。
safe_substitute はエラーを報告しませんが、$xxx を結果文字列に直接入力します。
there apple and $b
の利点は、プログラムが常に正しく、エラーに 1 つずつ圧倒される必要がないことです。
テンプレートは継承でき、そのサブクラスはいくつかの「個人化された」操作を実行できます...
$文字は区切り文字フィールドを変更することで「#」などの他の文字に変更できますが、新しい識別子はそれに準拠する必要があります通常のルールを使用した式の仕様。
idpattern を変更することでキーの命名規則を変更できます。たとえば、最初の文字は a で始まることが規定されており、これは命名を標準化するのに非常に適しています。もちろん、これは通常の表現によっても実現されます。
りー以上がPython でのテンプレートの使用の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。