qzgx.net
当前位置:首页 >> python中sElF有什么意义 >>

python中sElF有什么意义

1. self是只有在类中才会有的.self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数.2. 但self的名称并不是一定的,在python中self不是关键词.在初始化函数中可以把self换成任意名字,例如myclass:class person: def _init_(

self是对“对象”自身的引用.相当于c++中的this.python中self在类的方法中必须以传入参数写在函数的参数列表中.它实际上是指向类的对象的一个类似于C++中指针的私有变量.python规定:访问类成员时,需要在前面加上this.这里,this.

类(class)初始化之后会得到实例(instance).self就是用于代表初始化的到的实例.明确地写一个self参数,使得类的方法(method)和普通的函数(function)本质上没有差异,所有的输入参数都显示地传递到方法/函数当中.当然作为类的方法,作用的对象一定会是实例,因而在python的设计之初,完全可以设计成self不作为一个参数,但是那样就需要一个关键字代表实例,比如在javascript中就是this.然而python的哲学是"explicit is better than implicit.",显示要比隐示好,因此python类的方法需要一个self参数代表实例是符合逻辑的.

self表示实例自身 a=self[:]就是superlist[:]

这个设计真的很没必要或者说很老套还没有摆脱以前的语言设计的思维逻辑所以搞的很复杂,或者说逻辑很乱python 91年出来的,实际上是个老语言了现在的编程语言普遍的没有进化好

题主可以学习一下面向对象编程的一般知识.概括的说,主流的支持面向对象编程的语言(java, python等)关于“类”的定义是很接近的.类要有一个构造函数(python里就是__init__,java里是与类同名且无返回值的一个方法),在生成对象时

类似于C++中的this指针.但Python中的self是一个类而非指针,表示对实例自己的引用.

晚上特别针对Python的self查了一下,理理.Python要self的理由Python的类的方法和普通的函数有一个很明显的区别,在类的方法必须有个额外的第一个参数 (self ),但在调用这个方法的时候不必为这个参数赋值 (显胜于隐 的引发).

类的方法与普通的函数只有一个特别的区别--它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你不为这个参数赋值,python会提供这个值.这个特别的变量指对象本身,按照惯例它的名称是self. 虽然你可以给这个参数任何名称

__init__()是类的构造函数,在建立对象时调用.self是对“对象”自身的引用.相当于c++中的this.python规定:访问类成员时,需要在前面加上this.这里,this.name = name表示为person类添加了属性name.如果变量前不加this,则视为局部变量.这个变量会在方法运行结束后失效.而属性在整个类的范围内都是有效的.望采纳,谢谢支持!

qhgj.net | realmemall.net | lpfk.net | zxqk.net | zxtw.net | 网站首页 | 网站地图
All rights reserved Powered by www.qzgx.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com