python中简单的基于对象的字符串模板化
Simplate的Python项目详细描述
简化
基于python简单对象的字符串模板化
用法
从格式化的字符串创建可重用的模板对象和实现对象。simplate类(simplate.simplate) 允许您使用初始化时使用的字符串和(可选)标题动态创建新的模板类 作为新类的名称的模板。
import Simplate
mySimpleTemplate = Simplate.Simplate( "Hello {friend} how's your {pet}?", title="FriendlyLetter" )
print mySimpleTemplate.ImplementationClass
<class 'Simplate.Simplate.FriendlyLetter'>
newLetterToJohn = mySimpleTemplate.implement()
type(newLetterToJohn)
<class 'Simplate.Simplate.FriendlyLetter'>
newLetterToJohn.friend = "John"
newLetterToJohn.pet = "cute puppy"
str(newLetterToJohn)
"Hello John how's your cute puppy?"
每次调用simplate.implement()都将返回动态创建的模板类的新实例,以及 在模板字符串上成为此新模板类的新实例上的实例变量,而模板 它本身是此模板的所有实例之间的共享类变量。
初始化simplate时的第三个可选参数是“defaults”,这是实例的默认值 模板对象的变量。默认情况下,默认值为空字符串。
示例
import Simplate
emailString = "Dear {name}, thank you for your {item}, unfortunately its sold, sincerely {author}."
emailTemplate = Simplate.Simplate(emailString, "EmailToCustomer")
emailToBob = emailTemplate.implement()
emailToBob.author = "Kyle Kimery"
emailToBob.name = "Bob"
emailToBob.item = "Baseball Merchandise"
print emailToBob
Dear Bob, thank you for your inquiry regarding Baseball Merchandise, I regret to inform you that it's gone, sincerely Kyle Kimery.