我将mako template
与python
一起使用,并尝试通过使用python
脚本中的列表来生成文本文件。下面显示了一部分代码,这会引起问题。
% for COMPNAME in tpdob.scalar_modi:
${COMPNAME[0]} ${COMPNAME[1]} ${COMPNAME[2]} ${COMPNAME[3]}
% endfor
我正在使用此代码,并且输出是可怕的。
在这里,我在
scalar_modi
中有很多列表,我正在一张一张地打印它们(每个列表有4个值)。但是问题是,打印了太多的换行符,使输出文本文件看起来很难看。我在网上搜索,但找不到所需的解决方案。
你能帮我这个忙吗?
输出注释:
使用
${COMPNAME[0]} ${COMPNAME[1]} ${COMPNAME[2]} ${COMPNAME[3]}
,我得到:1 42 GBZ DLI
14 23平方米
32 55提纯
使用
${COMPNAME[0]} ${COMPNAME[1]} ${COMPNAME[2]} ${COMPNAME[3]} \
时,给出:11 42 gzb dli14 23 tpty sre32 55 puri ald
我想要这样:
11 42 gzb dli
14 23平方米
32 55提纯
当使用
if-else
条件时,我得到的甚至超过2个newlines
。谁能帮我这个忙。我也无法在其文档中找到解决方案:( 最佳答案
我有同样的问题,看起来像Windows的Mako模板中的错误。提供模板作为字符串而不是文件引用(如下所示)解决了该问题。
with open('code.template') as f:
templateStr = f.read()
template = mako.template.Template(templateStr)