Python 类的构造方法

视频版教程 Python3零基础7天入门实战视频教程

Python类里的 __init__方法就是类的构造方法,用作构造对象,同时还可以给对象初始化属性值用。

假如类里面没有写init构造方法,默认会提供一个空的构造方法。

我们写上空的init构造方法,再写个打印语句测试下:

python 复制代码
# 定义人类
class Person:
    # 属性 姓名
    name = None
    # 属性 年龄
    age = None

    def __init__(self):
        print("构造方法")

    # 成员方法 say  打印输出姓名和年龄
    def say(self):
        print(f"姓名:{self.name},年龄:{self.age}")

    def say2(self, msg):
        print(f"姓名:{self.name},年龄:{self.age},备注:{msg}")


# 创建一个对象 zhangsan
zhangsan = Person()
zhangsan.name = "张三"
zhangsan.age = 21
zhangsan.say()
zhangsan.say2("成年人")

# 在创建一个对象 lisi
lisi = Person()
lisi.name = "李四"
lisi.age = 12
lisi.say()
lisi.say2("未成年")

运行输出:

复制代码
构造方法
姓名:张三,年龄:21
姓名:张三,年龄:21,备注:成年人
构造方法
姓名:李四,年龄:12
姓名:李四,年龄:12,备注:未成年

说明 构造对象的时候,调用了init构造方法;

我们可以通过有参init构造方法,来初始化对象属性

python 复制代码
# 定义人类
class Person:
    # 属性 姓名
    name: None
    # 属性 年龄
    age: None

    def __init__(self, name, age):
        self.name = name
        self.age = age

    # 成员方法 say  打印输出姓名和年龄
    def say(self):
        print(f"姓名:{self.name},年龄:{self.age}")

    def say2(self, msg):
        print(f"姓名:{self.name},年龄:{self.age},备注:{msg}")


# 创建一个对象 zhangsan
zhangsan = Person("张三", 21)
zhangsan.say()
zhangsan.say2("成年人")

# 在创建一个对象 lisi
lisi = Person("李四", 12)
lisi.say()
lisi.say2("未成年")
相关推荐
辰辉创聚10 小时前
In Vivo抗体是什么?| 体内抗体与普通科研抗体的区别
人工智能·python·时序数据库·in vivo抗体·体内抗体·体内级抗体
深圳市宝华视联10 小时前
Python 读取 IP 视频流简单 Demo
python·嵌入式硬件·opencv·网络协议·tcp/ip·实时音视频·嵌入式实时数据库
门思科技10 小时前
LoRaWAN Regional Parameters:为什么 CN470 和 EU868 的频点数不同
python·物联网
Joseph 乔11 小时前
【Python】卸载与重装
经验分享·python
归去来?11 小时前
Python 常用优雅写法
开发语言·python
名字还没想好☜11 小时前
Java 21 switch 模式匹配实战:sealed 接口 + record 替代 if-instanceof 链
java·人工智能·后端·python·spring
深蓝海拓11 小时前
基于QtPy (PySide6) 的PLC-HMI工程实战记录(五)为当前动作画面的信号连接变量
网络·笔记·python·学习·pyqt
何以解忧,唯有..11 小时前
Python 异常处理完全指南:从基础到高级实践
开发语言·前端·python
DLYSB_12 小时前
让 PLC“开口说话”:基于 Modbus TCP 的声光语音告警设计与 Python 调试
python·网络协议·tcp/ip·报警灯
今日热点12 小时前
微信小程序主体变更公证全流程实操解析:场景条件、材料规范、驳回避坑与Python校验脚本实现
python·微信小程序·小程序