对象的初始化

一、对象的初始化
1、前提:
- 目前来说,对于Person类来说name是必须的,并且每一个对象中的name属性基本上都是不同,而现在是将name属性在定义为对象以后,手动添加到对象中,这种方式很容易出现错误
- 因此希望,在创建对象时,必须设置name属性,如果不设置对象将无法创建,并且属性的创建应该是自动完成的,而不是在创建对象以后手动完成
- 如下:手动向对象添加name属性的方法

class Person :
    def say_hello(self)
    print ('大家好,我是%s'%self.name)
p1 = Person()
# 手动向对象添加name属性
p1.name = '肖战'

2、创建对象的流程
- p1 = Person()的运行流程
① 创建一个变量
② 在内存中创建一个新队形
init(self)方法执行
④ 将对象的id赋值给变量
3、魔术方法
- 为解决以上的问题,在类中可以定义一些特殊的方法(魔术方法)
(1)语法: 特殊方法都是以__(双下划线)开头,__(双下划线)结尾的方法
(2)特殊方法不需要自己调用,特殊方法将会在特殊的时刻自动调用

class Person :
    def __init__(self):
        print ('余生请多指教~~')
p1 = Person()
    

(3)学习特殊方法
① 特殊方法什么时候调用
- init 会在对象创建以后立刻执行
② 特殊方法有什么作用
- init 可以用来向新创建的对象中初始化属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值