python定义类self用法实例解析
这篇文章主要介绍了python定义类self用法实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
在定义类的过程中,无论是显式的创建类的构造方法,还是向类中添加实例方法,都要将self参数作为方法的第一个参数。
class Person:
def __init__(self):
print("正在执行构造方法")
def study(self, name):
print(name, "正在学python")
python类方法中的self参数就相当于C++中的this指针。
同一个类可以产生多个对象,当某个对象调用类方法时,该对象会把自身的引用作为第一个参数自动传给该方法,换句话说,python会自动绑定类方法的第一个参数指向调用该方法的对象。
如此,python解释器就能知道到底要操作哪个对象的方法了。
程序在调用实例方法和构造方法时,不需要手动为第一个参数传值。
class Person:
def __init__(self):
print("正在执行构造方法")
def study(self):
print(self, "正在学python")
xiaobai = Person()
xiaobai.study()
mary = Person()
mary.study()
#执行结果
#study()中的self代表该方法的调用者,即谁调用该方法,那么self就代表谁。
正在执行构造方法
<__main__.Person object at 0x0000013B6A24BA58> 正在学python
正在执行构造方法
<__main__.Person object at 0x0000013B6A24BC88> 正在学python
对于构造函数中的self参数,其代表的是当前正在初始化的类对象。
class Person: name = "xiaobai" def __init__(self, name): self.name = name mary = Person("mary") print(mary.name) lisa = Person("lisa") print(lisa.name) #执行结果 mary lisa
总之,无论是类中的构造函数还是普通的类方法,实际调用它们的是谁,则self就代表谁。
以上就是本文的全部内容,希望对大家的学习有所帮助
您可能感兴趣的文章:
- Python上下文管理器用法及实例解析
- python中enumerate的用法实例解析
- python中enumerate的用法实例解析
- 实例解析Python的Twisted框架中Deferred对象的用法
- 实例解析Python的Twisted框架中Deferred对象的用法
- Python numpy线性代数用法实例解析
- python命令行参数解析OptionParser类用法实例
- Python元字符的用法实例解析
- Python定义函数功能与用法实例详解
- logistic回归原理解析及Python应用实例
- python pickle的用法实例代码
- Python中self用法详解
- python多线程threading.Lock锁用法实例
- python简单的函数定义和用法实例
- Python requests库用法实例详解
- python动态参数用法实例分析
- Python3.5 Pandas模块之DataFrame用法实例分析
- Python3.5多进程原理与用法实例分析
- Python中字典的浅拷贝与深拷贝用法实例分析
- python类继承用法实例分析