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("未成年")
相关推荐
大嘴带你水论文5 分钟前
震惊!仅用10张照片就能随意编辑3D人脸?韩国KAIST最新黑科技FFaceNeRF解析!
论文阅读·人工智能·python·科技·计算机视觉·3d·transformer
CodeCraft Studio11 分钟前
国产化PDF处理控件Spire.PDF教程:如何在 Java 中通过模板生成 PDF
java·python·pdf·spire.pdf·java创建pdf·从html创建pdf
摆烂z1 小时前
Jupyter Notebook的交互式开发环境方便py开发
ide·python·jupyter
一乐小哥2 小时前
一口气同步10年豆瓣记录———豆瓣书影音同步 Notion分享 🚀
后端·python
华研前沿标杆游学2 小时前
华为在国内搞的研发基地有多野?标杆游学带你解锁“研发界顶流”
python
小胖墩有点瘦2 小时前
【基于深度学习的中草药识别系统】
人工智能·python·深度学习·课程设计·计算机毕业设计·中草药识别
正在走向自律3 小时前
Ubuntu系统下Python连接国产KingbaseES数据库实现增删改查
开发语言·数据库·python·ubuntu·kingbasees·ksycopg2
Calihen的学习日志3 小时前
【Pandas】3.1-数据预处理:列的基本操作
python·pandas
打螺丝否3 小时前
稠密矩阵和稀疏矩阵的对比
python·机器学习·矩阵
这里有鱼汤4 小时前
你以为 FastAPI 足够强?其实 Litestar 能让你的项目更轻量高效
后端·python