我想在方法中定义一个属性:
class variables:
def definition(self):
self.word = "apple"
然后我想使用已定义的属性:
test = variables()
print test.definition.word
我没有写'apple'
而是收到错误:
Traceback (most recent call last):
File "bezejmenný.py", line 6, in <module>
print test.definition.word
AttributeError: 'function' object has no attribute 'word'
答案 0 :(得分:4)
definition
是一种方法,因此您需要执行它因为您要为self分配变量,所以您可以通过您的实例访问它,如下所示
test = variables()
test.definition()
print test.word
一些想法:
definition
方法使用object
扩展您的课程,因为 python中的所有内容是对象(仅限python 2.x)
class Variables(object):
def __init__(self):
self.word = 'I am a word'
variables = Variables()
print variables.word
答案 1 :(得分:2)
您可以像这样访问实例属性:
test = variable()
test.definition()
print test.word