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("未成年")
相关推荐
AIAdvocate1 小时前
Pandas_数据结构详解
数据结构·python·pandas
小言从不摸鱼1 小时前
【AI大模型】ChatGPT模型原理介绍(下)
人工智能·python·深度学习·机器学习·自然语言处理·chatgpt
FreakStudio3 小时前
全网最适合入门的面向对象编程教程:50 Python函数方法与接口-接口和抽象基类
python·嵌入式·面向对象·电子diy
redcocal4 小时前
地平线秋招
python·嵌入式硬件·算法·fpga开发·求职招聘
artificiali5 小时前
Anaconda配置pytorch的基本操作
人工智能·pytorch·python
RaidenQ5 小时前
2024.9.13 Python与图像处理新国大EE5731课程大作业,索贝尔算子计算边缘,高斯核模糊边缘,Haar小波计算边缘
图像处理·python·算法·课程设计
花生了什么树~.5 小时前
python基础知识(六)--字典遍历、公共运算符、公共方法、函数、变量分类、参数分类、拆包、引用
开发语言·python
Trouvaille ~6 小时前
【Python篇】深度探索NumPy(下篇):从科学计算到机器学习的高效实战技巧
图像处理·python·机器学习·numpy·信号处理·时间序列分析·科学计算
爆更小小刘6 小时前
Python基础语法(3)下
开发语言·python
哪 吒6 小时前
华为OD机试 - 第 K 个字母在原来字符串的索引(Python/JS/C/C++ 2024 E卷 100分)
javascript·python·华为od