python学习-def __init__(self)理解(2)

def __init__(self)在Python里面很常见,

Python中的self

在Python中的类Class的代码中,常看到函数中的第一个参数,都是self。以及Class中的函数里面,访问对应的变量(读取或者写入),以及调用对应的函数时,经常有以下代码:

①self.valueName

valueName:表示self对象,即实例的变量。与其他的,Class的变量,全局的变量,局部的变量,是相对应的。

②self.function()

function:表示是调用的是self对象,即实例的函数。与其他的全局的函数,是相对应的。

  • Python中为何要有self

在类的代码(函数)中,需要访问当前的实例中的变量和函数的,即,访问Instance中的:

对应的变量(property):Instance.ProperyNam,去读取之前的值和写入新的值

调用对应函数(function):Instance.function(),即执行对应的动作

-> 而需要访问实例的变量和调用实例的函数,当然需要对应的实例Instance对象本身

-> 而Python中就规定好了,函数的第一个参数,就必须是实例对象本身,并且建议,约定俗成,把其名字写为self,以safe为前缀的变量都可供类中的所有方法使用

-> 所以,我们需要self(需要用到self)

class Person:
    def __init__(self, newPersionName):
        self.name = newPersionName
#此处正确的,通过访问self.name的形式,实现了:
# 1.给实例中,增加了name变量
# 2.并且给name赋了初值,为newPersionName
 
    def sayYourName(self):
        print('My name is %s'%(self.name))
#此处由于开始正确的初始化了self对象,使得其中有了name变量,
#所以此处可以正确访问了name值了
 
 
p = Person('Bob')
p.sayYourName()   #第一种调用方法
print("-" * 50)
Person('Bob').sayYourName()#第二种调用方法

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值