【发布时间】:2011-05-02 20:00:31
【问题描述】:
请看这个:
class Car:
def __init__(self, bid_code):
self.__bid = bid_code
def doit(self, cry):
self.bid_it = cry
def show_bid(self):
print self.__bid
def show_it(self):
print self.bid_it
a = Car("ok")
a.show_bid()
a.doit("good")
a.show_it()
这里bid_it的范围是什么?我认为它是一个局部变量,因为它位于 def 块内。我怎么可能在函数之外调用它?我还没有声明 bid_it 是全局的。
谢谢
【问题讨论】:
-
variable
bid_code唯一使用的时间是在构造函数中,它是参数。在所有其他情况下,property 被访问。属性不作为变量“作用域”,尽管它们通过解析链运行。属性和变量都不是对象——它们只能包含/引用对象。