2016-11-29 78 views
-4

我有一个使用来自类的数据的字典。我的字典在打印时输出以下内容:调用字典对象

{ 736: <inventory.Inventory object at 0x7fd21fcf7c18>, 
    529: <inventory.Inventory object at 0x7fd21fcf7828>, 
    194: <inventory.Inventory object at 0x7fd21fcf7ac8>, 
    132: <inventory.Inventory object at 0x7fd21fcf7780>, 
    533: <inventory.Inventory object at 0x7fd21fcf7940>, 
    827: <inventory.Inventory object at 0x7fd21fcf79e8>, 
    285: <inventory.Inventory object at 0x7fd21fcf7ba8> } 

如何在调用其他函数中的字典时调用此对象的单个值?

+3

什么是Inventory对象,它是什么意思来称呼它? –

回答

1

如果字典中Inventory类的实例是可调用的 - 也就是说,它们定义了一个合适的__call__方法 - 您可以通过键访问它们,并像调用其他可调用对象一样调用它们。也就是说,使用括号:

my_dict[736](<supply any args needed>) 
+0

问题是钥匙没有设置在石头上,可能会改变,所以我不想硬接线。 –

+0

然后遍历它们并连续调用my_dict:my_dict [i]()'?要访问字典元素,您需要为其提供一个具有相应条目的密钥。 –

0

只要你在字典中的元素,你将可以完全访问由存储在该值的对象所提供的方法...

你可以试试做类似

print myDict[736](myArgHere) 
+0

我不想硬连线钥匙 –

+0

@EarthlingPerson我认为736只是一个例子。您可以使用变量来保存键值。 –