2016-11-13 71 views
0

这里是我的代码(Python)如何从类中的不同方法访问/使用变量?

class Circle(object): 
    def __init__(self, radius = 1): 
     self_radius = radius 

    def __str__(self): 
     return "Circle with radius {}".format(self_radius) 

我把它从我的老师的幻灯片,它采取了一个整数(半径)调用时(A =圆(25),例如),然后用半径返回--Circle 25--当我打印

的问题是,当我做到这一点,而不是得到它,我得到一个错误,指出self_radius没有定义(在STR方法),这样的问题是如何用不同的方法变比起源?

谢谢

+0

它是'.',而不是'_'。 – TigerhawkT3

回答

1

资格与self.实例的属性,而不是self_

class Circle(object): 
    def __init__(self, radius = 1): 
     self.radius = radius 

    def __str__(self): 
     return "Circle with radius {}".format(self.radius) 

如果命名变量self_radius,它成为本地变量;无法通过其他方法访问。

+0

我试过了,它的工作原理!谢谢! –

+0

你能解释什么样的变量self.names会是什么? –

+0

@IbnuFirdaus,它成为实例变量。阅读关于类的教程(https://docs.python.org/3/tutorial/classes.html)将会很有帮助。 – falsetru