3、python的几种变量——按作用域分
1、全局变量:在模块内、在所有函数外面、在class外面,这就是全局变量。
2、局部变量:在函数内、在class的方法内(未加self修饰的) ,这就是局部变量,调用形式:类.局部变量名字
3、静态变量(也可以说,类属性):在class内的,但不在class的方法内的,这就是静态变量
4、实例变量(也可以说,实例属性):在class的方法内的,用self修饰的变量,这就是实例变量
1.变量:如果没有定义方法,仅是在类内定义的代表的是局部变量,直接类.zero就可以调用
class NN(object):
zero = 0
2、 变量:self.变量是定义在方法里面的,那就是方法的属性。调用方法属性需要实例化类,然后实例化的类在.方法(),然后在实例化 .属性。具体看例子:
class NN(object):
def mm(self):
self.zero = 0
a=NN()
a.mm()
print("n",a.zero)
如果去掉a.mm()会出现以下错误:AttributeError: 'NN' object has no attribute 'zero'
3.变量:定义在类内的方法里,没有self,是局部变量
class NN(object):
# zero = 0
def mm(self):
zero=0
self.another = zero
a=NN()
# a.mm()
print("n",a.mm())