2

我在python中定义了一个字典:

tal:define="dic python:{'a':'1', 'b':'2'};"

我有另一个使用tal:define称为 var 定义的变量,它是“a”或“b”。当我尝试这样做时出现错误:

tal:define="foo python:dic['${var}'];"

(然后 foo 将是 '1' 或 '2')我得到KeyError: '${var}'. 我试过了dic[$var]dic[var]等等,但它们都不起作用。如何使用以前定义的变量tal:define作为字典的键来获取其值。

4

2 回答 2

5

路径表达式语法:

tal:define="foo dic/?var"

Python 表达式语法:

tal:define="foo python:dic[var]"

有关 ?var 语法的描述,请参阅Zope Book

于 2012-01-05T06:18:43.600 回答
0

DonCallisto 的 dic[var] 确实有效

于 2012-01-10T15:08:45.170 回答