- 背景
- 模板类介绍
- 使用方法
当格式化字符串中含有特殊字符,如:{}、%s等时,format 和 % 占位方式已无法进行格式化
模板类介绍
Python模板用于将数据替换为字符串。使用模板,我们获得了一个高度可定制的界面,用于字符串替换(或字符串插值)。从Python 2.4开始,PythonTemplate类已添加到string模块中。此类旨在用作内置替换选项(主要是%)的替代方法,以创建基于字符串的复杂模板并以用户友好的方式处理它们。该类的实现使用正则表达式来匹配有效模板字符串的一般模式。
有效的模板字符串或占位符由两部分组成:
- $符号
- 有效的Python标识符。标识符是大小写字母A到Z,下划线(_)和数字0到9的任意序列。标识符不能以数字开头,也不能是Python关键字
- 从string模块导入Template
- 创建一个有效的模板字符串
- Template使用模板字符串作为参数实例化
- 使用替代方法执行替代
from string import Template
format_str = "my name is ${name}"
template_obj = Template(format_str)
template_obj.safe_substitute(name="alen")
注意:
${name} 等价于$name。当有效的标识符字符位于占位符之后但不属于占位符时,例如,则是必需的"${name}name"



