使用Template格式化Python字符串的方法
對(duì)Python字符串,除了比較老舊的%,以及用來(lái)替換掉%的format,及在python 3.6中加入的f這三種格式化方法以外,還有可以使用Template對(duì)象來(lái)進(jìn)行格式化。
from string import Template,可以導(dǎo)入Template類。
實(shí)例化Template類需要傳入一個(gè)Template模板字符串。
class Template(metaclass=_TemplateMetaclass): """A string class for supporting $-substitutions.""" delimiter = '$' idpattern = r'[_a-z][_a-z0-9]*' flags = _re.IGNORECASE def __init__(self, template): self.template = template
字符串默認(rèn)以%作為定界符
# 默認(rèn)的定界符是$,即會(huì)將$之后內(nèi)容匹配的字符串進(jìn)行替換 s = Template('hello, $world!') print(s.substitute(world='python')) # hello, python!
實(shí)例化Template之后,返回對(duì)象s,調(diào)用對(duì)象s的substitute,傳入替換的數(shù)據(jù),最終返回替換之后的結(jié)果。
如果需要對(duì)定界符進(jìn)行修改,可以創(chuàng)建一個(gè)Template的子類,在子類中覆蓋掉Template的類屬性delimiter,賦值為需要重新設(shè)定的定界符。
# 可以通過(guò)繼承Template類的方式進(jìn)行替換 class CustomerTemplate(Template): delimiter = '*' t = CustomerTemplate('hello, *world!') print(t.substitute(world='python')) # hello, python!
上面的例子中,輸出和未修改定界符之前是一樣的,都是hello, python!
以上這篇使用Template格式化Python字符串的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python實(shí)現(xiàn)處理apiDoc轉(zhuǎn)swagger的方法詳解
這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)處理apiDoc轉(zhuǎn)swagger的方法,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以了解一下2023-02-02淺談pytorch池化maxpool2D注意事項(xiàng)
今天小編就為大家分享一篇淺談pytorch池化maxpool2D注意事項(xiàng),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02python Django框架快速入門(mén)教程(后臺(tái)管理)
Django 是一個(gè)開(kāi)放源代碼的 Web 應(yīng)用框架,由 Python 寫(xiě)成,今天通過(guò)本文給大家介紹python Django框架快速入門(mén)教程,適用后臺(tái)管理,感興趣的朋友跟隨小編一起看看吧2021-07-07Python Pandas數(shù)據(jù)分析之iloc和loc的用法詳解
Pandas 是一個(gè)開(kāi)放源碼、BSD 許可的庫(kù),提供高性能、易于使用的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)分析工具,它是一個(gè)強(qiáng)大的分析結(jié)構(gòu)化數(shù)據(jù)的工具集,基礎(chǔ)是 Numpy2021-11-11python使用elasticsearch的過(guò)程詳解
Elasticsearch 是一個(gè)開(kāi)源的搜索引擎,建立在一個(gè)全文搜索引擎庫(kù) Apache Lucene基礎(chǔ)之上,這篇文章主要介紹了python使用elasticsearch的詳細(xì)過(guò)程,需要的朋友可以參考下2024-03-03Python3實(shí)現(xiàn)的Mysql數(shù)據(jù)庫(kù)操作封裝類
這篇文章主要介紹了Python3實(shí)現(xiàn)的Mysql數(shù)據(jù)庫(kù)操作封裝類,涉及Python針對(duì)mysql數(shù)據(jù)庫(kù)的連接、查詢、更新及關(guān)閉連接等相關(guān)操作技巧,需要的朋友可以參考下2018-06-06