【发布时间】:2015-01-16 01:33:41
【问题描述】:
我正在创建一个类并尝试定义与在另一个类变量上调用的 .keys() 或 .values() 等函数相对应的类变量。 例如:
class DATA(object):
def __init__(self, id, database = {}):
self.id = id
self.database = database
self.addresses = database.keys()
self.data = database.values()
这似乎不起作用,因为当我创建类的实例时
foo = DATA(0,{"a":1,"b":2})
然后要求:
print(foo.addresses)
>>> []
它返回一个空列表。
注意:
在我的实际程序中,我从任何类实例的空字典开始,然后我使用一个函数添加到字典中。在这种情况下,调用“.database”仍然有效,但“.addresses”无效。
谁能帮我解决这个问题?
【问题讨论】:
-
@Brandon Gomes:当你说“然后要求”时——实际上中间有一些步骤吗?你真的是从
foo = DATA(0, {})开始,然后再更改 DATA.database 吗?
标签: python function class dictionary