使用Template格式化Python字符串的方法
對(duì)Python字符串,除了比較老舊的%,以及用來(lái)替換掉%的format,及在python 3.6中加入的f這三種格式化方法以外,還有可以使用Template對(duì)象來(lái)進(jìn)行格式化。
from string import Template,可以導(dǎo)入Template類(lèi)。
實(shí)例化Template類(lèi)需要傳入一個(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的子類(lèi),在子類(lèi)中覆蓋掉Template的類(lèi)屬性delimiter,賦值為需要重新設(shè)定的定界符。
# 可以通過(guò)繼承Template類(lèi)的方式進(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)文章
利用PyInstaller將python程序.py轉(zhuǎn)為.exe的方法詳解
這篇文章主要給大家介紹了利用PyInstaller將python程序.py轉(zhuǎn)為.exe的方法,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-05-05
Python 20行簡(jiǎn)單實(shí)現(xiàn)有道在線翻譯的詳解
這篇文章主要介紹了Python實(shí)現(xiàn)有道在線翻譯的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05
Keras自定義實(shí)現(xiàn)帶masking的meanpooling層方式
這篇文章主要介紹了Keras自定義實(shí)現(xiàn)帶masking的meanpooling層方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06
python生成requirements.txt文件的兩種方法
requirements.txt 文件是項(xiàng)目的依賴(lài)包及其對(duì)應(yīng)版本號(hào)的信息列表,本文主要介紹了python生成requirements.txt文件的兩種方法,具有一定的參考價(jià)值,感興趣的可以了解一下2023-12-12
Python可變參數(shù)會(huì)自動(dòng)填充前面的默認(rèn)同名參數(shù)實(shí)例
今天小編就為大家分享一篇Python可變參數(shù)會(huì)自動(dòng)填充前面的默認(rèn)同名參數(shù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11
何用Python實(shí)現(xiàn)一個(gè) “系統(tǒng)聲音” 的實(shí)時(shí)律動(dòng)掛件
這篇文章將給大家介紹了如何用 Python 實(shí)現(xiàn)一個(gè) “系統(tǒng)聲音” 的實(shí)時(shí)律動(dòng)掛件,采集后直接實(shí)時(shí)地在電腦上繪制波形動(dòng)畫(huà),主要是用來(lái)作為 FL Studio 播放時(shí)的一個(gè)桌面小掛件,文中有相關(guān)的代碼示例供大家參考,需要的朋友可以參考下2024-01-01
python機(jī)器學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)(一)
這篇文章主要為大家詳細(xì)介紹了python機(jī)器學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)第一篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12

