亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 python 模板字符串類渲染列表

使用 python 模板字符串類渲染列表

慕俠2389804 2023-09-12 10:28:58
我想使用Template從列表開始的字符串類。我開始于:from string import Template temp = Template('-* $item - \n') items = ["alpha", "beta", "gama"] subs = ''.join([temp.substitute(item) for item in items])這會失敗,因為它需要字典而不是列表。結果應該是:-* alpha - -* beta - -* gama -一些限制:我知道可以使用它來完成,append但我想要傳遞模板的靈活性,其中一些比示例中的更復雜應該適用于 python2 和 3理想情況下會更像 jinja2 或 django 模板渲染,但不幸的是我無法添加第三方包,此外我只需要變量和列表替換。
查看完整描述

2 回答

?
慕妹3146593

TA貢獻1820條經驗 獲得超9個贊

substitute需要知道$item模板中的占位符應該替換為什么,因此要么提供一個映射字典:

subs = ''.join([temp.substitute({'item': item}) for item in items])

或者,正如 @Rfroes87 在評論中提到的,item作為 kwarg 傳遞:

subs = ''.join([temp.substitute(item=item) for item in items])


查看完整回答
反對 回復 2023-09-12
?
Qyouu

TA貢獻1786條經驗 獲得超11個贊

嘗試字符串格式化而不是模板,它甚至可能具有相同的后臺引擎

subs = ''.join(['-* %s - \n' % item for item in items])


查看完整回答
反對 回復 2023-09-12
  • 2 回答
  • 0 關注
  • 126 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號