簡體   English   中英

使用mako腳本的一線循環輸出

[英]One-liner for loop output with mako script

是否可以僅將mako腳本的for循環填充到一行? 到目前為止,我所看到的所有示例都創建多行,並且在一行中編寫mako for循環會導致mako錯誤。

填充mako模板的示例代碼:

data = ['foo', 'bar', 'baz']
template = Template(filename='test.mak')
template.render(data=data)

模板文件test.mak(創建多行不是我想要的):

items=
% for d in data:
${d}${'' if loop.last else ','}
% endfor

預期的擴展mako腳本輸出應為items=foo,bar,baz

我當前的解決方法是將items=${','.join(data)}作為mako腳本,但是我想知道是否可以使用內置的mako指令來實現。

正如mako 文檔所說,您可能會在行的最后添加反斜杠\\來消耗結束符。 因此,您的模板應如下所示:

items=\
% for d in data:
${d}${'' if loop.last else ','}\
% endfor

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM