|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#刚开始学到类这一章节,
python的类中,是个变量,就要套一个 self.变量名 在什么情况下可以不套用self,直接上变量名????
import random as r
class Fish:
def __init__(self):
self.x=r.randint(0,10)
self.y=r.randint(0,10)
本帖最后由 Twilight6 于 2020-8-30 21:29 编辑
类体中,所有函数之外:此范围定义的变量,称为类属性或类变量;
类体中,所以函数内部:以“self.变量名”的方式定义的变量,称为实例属性或实例变量;
类体中,所有函数内部:以“变量名=变量值”的方式定义的变量,称为局部变量;
关于类中的变量,可以看看这个笔记: http://note.youdao.com/noteshare ... E619E7E6F44BD603893
在什么情况下可以不套用self,直接上变量名????
看你想定义的是类变量还是局部变量,类变量是所有实例可以共用的,只要类变量改变,所有实例查找到的类变量值也会改变
而如果你想定义的是局部变量,那么就是这个变量只在这个作用域有用到,其他地方不用就可以定义 局部变量
而 self 带头的是实例变量,是在整个实例空间都可以用的,当你在其他方法中要使用这个变量就需要定义这样的变量,而且是每个实例对象是独立的实例属性,每个实例互不影响
|
|