文章详情页
python中class里面的self是什么意思?
浏览:234日期:2022-06-28 13:43:13
问题描述
def __init(self)
这个self什么意思:?
问题解答
回答1:self就是代表自己,self.name=’xxx’,就是说这个类的name属性值是’xxx’,def _init_(self):xxxx就是在新建这个类的实例的时候,会自动执行的方法,而def test(self):xxxx就是你可以调用的方法有self.test()。这样说你是不是明白了?
回答2:self 指你将要引用的对象,在初始化时和调用方法时略有不同. 比如
class A: def __init__(self, name):self.name = name def printname(self):print(self.name)a = A(’hello’)a.printname()
在初始化对象时, self指代这个新创建的对象,所以a赋值给self,则self.name相当于a.name, 所以为对象a创建了一个属性name. 在调用方法时: self 指代你要引用的对象,就是要作用的对象,即a. 所以self被赋值为a. 所以print(self.name)相当于print(a.name).
书籍: Python学习手册 上有很详细的解释.
上一条:Python用多进程写文件遇到编码问题,而用多线程却不会下一条:python - github:一个输入输出程序代码,我只是改变了tsv档中的资料,为何无法输出,出现UnicodeDecodeError的现状?
相关文章:
1. Java使用数组的速度比C ++中std :: vector快8倍。我做错什么了?2. web服务器 - Nginx可不可以理解为一个框架,上面跑的都是什么程序?3. 关于网站上传后浏览器不识别的问题4. Android 高德地图如何设置缩放限制级别?5. dockerfile - 为什么docker容器启动不了?6. 关docker hub上有些镜像的tag被标记““This image has vulnerabilities””7. java - servlet的init方法和选择Filter的init方法来加载配置文件,二者有何区别?8. android - coordinatorLayout嵌套recyclerview9. html5 - 在Mac里使用vscode,却无法使用已下载的扩展……10. java - ehcache缓存用的是虚拟机内存么?
排行榜

网公网安备