为了账号安全,请及时绑定邮箱和手机立即绑定

关于在python中self是什么呢?有知道的吗?

关于在python中self是什么呢?有知道的吗?

BIG阳 2022-02-18 11:11:35
>>> class person:def setname(self,name):self.name=nameprint self.name>>> person().setname('song')song其中self.name=nameself.name是什么?是什么么类型?
查看完整描述

3 回答

?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

  1. self是只有在类中才会有的。self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。

  2. 但self的名称并不是一定的,在python中self不是关键词。在初始化函数中可以把self换成任意名字,例如myClass:


    class Person:    def _init_(myClass,name):        myClass.name=name    def printName(myClass):        print 'My name is:',myClass.namep=Person('Bill')print p
  3. 那么self到底是什么意思呢?self其实和C++的this是一样的,只不过python中self在类的方法中必须以传入参数写在函数的参数列表中。它实际上是指向类的对象的一个类似于C++中指针的私有变量。


查看完整回答
反对 回复 2022-02-21
?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

python中的self就相当于C++中的this指针
也就是指向对象本身的指针
self.name = name 就是当前对象的成员变量name赋值为name。

查看完整回答
反对 回复 2022-02-21
?
慕妹3242003

TA贡献1824条经验 获得超6个赞

python中的self就相当于C++中的this指针
也就是指向对象本身的指针
self.name = name 就是当前对象的成员变量name赋值为name
python的特性就是声明一个变量的时候不需要手动的指定类型,赋值的时候类型就自动的决定了,并且后期也可以改变。这里name是从外部传入的,所以这里的self.name的类型就是由外部传递的name类型决定的。

查看完整回答
反对 回复 2022-02-21
  • 3 回答
  • 0 关注
  • 212 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信