一、模板字符串
模板字符串提供了由 PEP 292 所描述的更简便的字符串替换方式。 模板字符串的一个主要用例是文本国际化 (i18n),因为在此场景下,更简单的语法和功能使得文本翻译过程比使用 Python 的其他内置字符串格式化工具更为方便。 作为基于模板字符串构建以实现 i18n 的库的一个示例,请参看 flufl.i18n 包。
模板字符串支持基于 $ 的替换,使用以下规则:
$$
为转义符号;它会被替换为单个的$
。$identifier
为替换占位符,它会匹配一个名为 “identifier” 的映射键。 在默认情况下,“identifier” 限制为任意 ASCII 字母数字(包括下划线)组成的字符串,不区分大小写,以下划线或 ASCII 字母开头。 在$
字符之后的第一个非标识符字符将表明占位符的终结。${identifier}
等价于$identifier
。 当占位符之后紧跟着有效的但又不是占位符一部分的标识符字符时需要使用,例如"${noun}ification"
。
在字符串的其他位置出现 $
将导致引发 ValueError<