如果我有
foo = OrderedDict[("key", lambda: "value")]
我明白了
TypeError: 'type' object has no attribute '__getitem__'
这是怎么回事?这不行吗?
答案 0 :(得分:1)
我不确定您要做什么,但是不,这不起作用。您正在尝试访问一种类型,就像它是一个包含要引用的数据的对象一样。
OrderedDict是一种类型。这不是一个对象。它不包含任何数据,因此通过直接对它应用[]运算符来尝试引用它好像包含了数据是没有意义的。您需要创建OrderedDict类型的实例。
我猜这是您要使用的,它创建了一个新的OrderedDict,其中只有一个带有键“ key”的项目:
foo = OrderedDict([("key", lambda: "value")])
print(foo["key"]())
哪个给出结果:
value
答案 1 :(得分:0)
我忘了在括号中加上括号。