使用Template格式化Python字符串的方法
对Python字符串,除了比较老旧的%,以及用来替换掉%的format,及在python 3.6中加入的f这三种格式化方法以外,还有可以使用Template对象来进行格式化。
from string import Template,可以导入Template类。
实例化Template类需要传入一个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
字符串默认以%作为定界符
# 默认的定界符是$,即会将$之后内容匹配的字符串进行替换
s = Template('hello, $world!')
print(s.substitute(world='python'))
# hello, python!
实例化Template之后,返回对象s,调用对象s的substitute,传入替换的数据,最终返回替换之后的结果。
如果需要对定界符进行修改,可以创建一个Template的子类,在子类中覆盖掉Template的类属性delimiter,赋值为需要重新设定的定界符。
# 可以通过继承Template类的方式进行替换
class CustomerTemplate(Template):
delimiter = '*'
t = CustomerTemplate('hello, *world!')
print(t.substitute(world='python'))
# hello, python!
上面的例子中,输出和未修改定界符之前是一样的,都是hello, python!
以上这篇使用Template格式化Python字符串的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
利用PyInstaller将python程序.py转为.exe的方法详解
这篇文章主要给大家介绍了利用PyInstaller将python程序.py转为.exe的方法,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。2017-05-05
Keras自定义实现带masking的meanpooling层方式
这篇文章主要介绍了Keras自定义实现带masking的meanpooling层方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-06-06
python生成requirements.txt文件的两种方法
requirements.txt 文件是项目的依赖包及其对应版本号的信息列表,本文主要介绍了python生成requirements.txt文件的两种方法,具有一定的参考价值,感兴趣的可以了解一下2023-12-12


最新评论