代码里面有的变量是直接定义的,有的变量是前面加上self.定义的,区别是什么?
来源:3-20 设置状态保持session(二)
慕仔5486025
2020-02-16 18:15:14
代码里面有的变量是直接定义的(比如login_url),有的变量是前面加上self.定义的(比如self.index_url),区别是什么?是不是直接定义的就是函数内部的局部变量,而加了self.的就是实例所涉及的全局变量了?
1回答
同学,你好。
直接定义的变量和前面加上self.定义的变量的区别是:前者表示从属于函数、方法、模块内的自定义变量,而后者表示从属于所在类的实例的属性,也就是说属于实例变量,可以通过实例变量.属性名的方式进行访问。
同学的理解稍有偏差,局部变量的作用域与是否添加self无关,主要与函数定义和缩进有关;而添加了self的变量是与类的实例所关联的,但不一定是全局变量。
如果我的回答解决了您的疑惑,请采纳!祝~学习愉快~
相似问题
回答 1