Python 最好将html拆分为多个部分并使用变量联接,或者使用test.replace()代替10次?
假设我的html模板有10件东西需要替换 将html拆分为10个变量,然后将它们添加到一起会更好吗Python 最好将html拆分为多个部分并使用变量联接,或者使用test.replace()代替10次?,python,python-2.7,mod-wsgi,Python,Python 2.7,Mod Wsgi,假设我的html模板有10件东西需要替换 将html拆分为10个变量,然后将它们添加到一起会更好吗 a1 = '<html><title>' a2 = '</title><body>' var = 'title' output = a1 + var + a2 还是干脆用 a1 = '<html><title>000</title><body>' var = 'titl
a1 = '<html><title>'
a2 = '</title><body>'
var = 'title'
output = a1 + var + a2
还是干脆用
a1 = '<html><title>000</title><body>'
var = 'title'
output = a1.replace('000',var)
例如,如果有10件东西需要更换 我会使用字符串格式:
a1 = '<html><title>{0}</title><body>{1}</body></html>'
vars = ['title', 'body']
output = a1.format(*vars)
或
这里{index}告诉format用哪个变量替换那个位置。您还可以重用索引-{0}{0}{1}{1}。格式“Test1”,“Test2”将为您提供“Test1Test1Test2Test2”。您还可以使用许多格式说明符。Ref:这两种方法都不是很好的方法,因为它们实际上都不支持HTML语法。真正的模板引擎需要能够处理诸如引用和转义之类的事情-特别是如果你正在替换用户提供的数据,在这种情况下,如果不正确地这样做,将有严重的安全问题。无论如何,一个好的模板引擎,如Jinja,将把你的模板编译成Python字节码,这意味着您可以获得现代工具的所有灵活性,并且不会放弃性能。
a1 = '<html><title>{0}</title><body>{1}</body></html>'
var1 = 'title'
var2 = 'body'
output = a1.format(var1, var2)