当前位置: 移动技术网 > IT编程>脚本编程>Python > 使用Template格式化Python字符串的方法

使用Template格式化Python字符串的方法

2019年03月21日  | 移动技术网IT编程  | 我要评论

如果你是我,苏菲玛索电影,鬼魅狂狷

对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字符串的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网