6

以下会引发语法错误,“解析时出现意外的 EOF”:

${foo({'bar':'baz'})}

我猜这是来自内部闭合花括号。这工作正常:

${foo(dict(bar='baz'))}

但是使用字典文字的语法是什么?

4

1 回答 1

6

来自Mako Templates Google Group上的 Brian Rue :

这是一个长期存在的错误;只需使用 dict()。如果您需要包含非字符串键的字典,请将元组列表转换为字典。例如,而不是这个:

${foo({1: 'a', 2: 'b'})}

做这个:

${foo(dict([(1, 'a'), (2, 'b')]))}

于 2011-01-08T21:07:48.393 回答