【Python高级编程】类和实例化

【Python高级编程】类和实例化

配套视频课程:

【AI人工智能实战】 Python高级编程(附完整版源码资料)

1、类的声明

通俗的说,类就是一个对象的模版。定义的格式如下:

【Python高级编程】类和实例化

配套视频课程:https://www.bilibili.com/video/BV1pPpYzuE7w/?spm_id_from=333.1387.homepage.video_card.click

1、类的声明

通俗的说,类就是一个对象的模版。定义的格式如下:

class是关键字,表示要创建类,className为类名称。类里面可以有属性和方法,属性在类的外面可以看成是变量,方法就是在类中定义的函数。对象则是一个类的真实表现。创建一个对象,在类名后面加上括号即可。

例1:声明一个学生类

  • 属性:姓名、年龄、国籍、班级
  • 方法:打印学生信息
python 复制代码
class Student:
    country = "China"   # 类属性,在方法外部声明
    def info(self,name,age,cla):
        # 实例方法,默认带self参数,该参数必须有,表示的是调用该方法的对象
        # 实例方法内部声明的变量叫做实例属性,self.变量名 = value,可以在类的其他方法中调用
        self.name = name   # 实例属性,在类的内部通过self调用,在外部通过对象调用
        self.age = age
        self.cla = cla   # 班级
        name = 'aaaa'  # 局部变量,只能在当前方法内部调用
    def out(self):
        print(f'姓名:{self.name}\n年龄:{self.age}\n班级:{self.cla}\n国籍:{self.country}')

2、实例化

对象的声明(实例化)

语法:对象名 = 类名([实参1,实参2,......])

例2:实例化Student类

python 复制代码
st = Student()  # 实例化
st.info('张三',16,'高一二班')   # 通过对象调用实例方法
st.out() # 调用out方法,输出学生信息
'''
运行结果:
姓名:张三
年龄:16
班级:高一二班
国籍:China
'''

3、内置方法

类的内置方法,也叫魔法方法,我们需要掌握几个常用的内置方法。

  • new方法

    new(),用于创建对象,在实例化时首先调用new方法返回一个对象

  • 构造方法

    init(),用于初始化对象,在实例化时自动调用

  • 析构方法

    del(),用于销毁对象,在对象生命周期结束时自动调用

例:

python 复制代码
class Cls:
    def __new__(cls, *args, **kwargs):
        print('我是new方法,用于创建对象')
        return object.__new__(cls)
    def __init__(self):
        print('我是构造方法,用于初始化对象')
    def __del__(self):
        print('我是析构方法,用于销毁对象')
obj = Cls()
'''
运行结果:
我是new方法,用于创建对象
我是构造方法,用于初始化对象
我是析构方法,用于销毁对象
'''

课程小结

  1. 完成类与对象声明的语法讲解,这是面向对象编程的基础。
  2. 讲解了三个重要的内置方法,灵活使用它们可以提高代码的质量。

class是关键字,表示要创建类,className为类名称。类里面可以有属性和方法,属性在类的外面可以看成是变量,方法就是在类中定义的函数。对象则是一个类的真实表现。创建一个对象,在类名后面加上括号即可。

例1:声明一个学生类

  • 属性:姓名、年龄、国籍、班级
  • 方法:打印学生信息
python 复制代码
class Student:
    country = "China"   # 类属性,在方法外部声明
    def info(self,name,age,cla):
        # 实例方法,默认带self参数,该参数必须有,表示的是调用该方法的对象
        # 实例方法内部声明的变量叫做实例属性,self.变量名 = value,可以在类的其他方法中调用
        self.name = name   # 实例属性,在类的内部通过self调用,在外部通过对象调用
        self.age = age
        self.cla = cla   # 班级
        name = 'aaaa'  # 局部变量,只能在当前方法内部调用
    def out(self):
        print(f'姓名:{self.name}\n年龄:{self.age}\n班级:{self.cla}\n国籍:{self.country}')

2、实例化

对象的声明(实例化)

语法:对象名 = 类名([实参1,实参2,......])

例2:实例化Student类

python 复制代码
st = Student()  # 实例化
st.info('张三',16,'高一二班')   # 通过对象调用实例方法
st.out() # 调用out方法,输出学生信息
'''
运行结果:
姓名:张三
年龄:16
班级:高一二班
国籍:China
'''

3、内置方法

类的内置方法,也叫魔法方法,我们需要掌握几个常用的内置方法。

  • new方法

    new(),用于创建对象,在实例化时首先调用new方法返回一个对象

  • 构造方法

    init(),用于初始化对象,在实例化时自动调用

  • 析构方法

    del(),用于销毁对象,在对象生命周期结束时自动调用

例:

python 复制代码
class Cls:
    def __new__(cls, *args, **kwargs):
        print('我是new方法,用于创建对象')
        return object.__new__(cls)
    def __init__(self):
        print('我是构造方法,用于初始化对象')
    def __del__(self):
        print('我是析构方法,用于销毁对象')
obj = Cls()
'''
运行结果:
我是new方法,用于创建对象
我是构造方法,用于初始化对象
我是析构方法,用于销毁对象
'''

课程小结

  1. 完成类与对象声明的语法讲解,这是面向对象编程的基础。
  2. 讲解了三个重要的内置方法,灵活使用它们可以提高代码的质量。
相关推荐
道之极万物灭3 小时前
Python uv虚拟环境管理工具详解
开发语言·python·uv
OC溥哥9993 小时前
C++2D地铁跑酷代码
开发语言·c++
格林威3 小时前
紫外工业相机入门介绍和工业检测核心场景
人工智能·数码相机·计算机视觉·目标跟踪·视觉检测
高洁013 小时前
【无标题】大模型-模型压缩:量化、剪枝、蒸馏、二值化 (2
人工智能·python·深度学习·神经网络·知识图谱
谈思汽车3 小时前
AutoSec Europe 2026 第二届欧洲汽车网络安全与数据安全峰会启动报名!
人工智能
一晌小贪欢3 小时前
Python爬虫第10课:分布式爬虫架构与Scrapy-Redis
分布式·爬虫·python·网络爬虫·python爬虫·python3
机器之心3 小时前
LSTM之父Jürgen再突破,「赫胥黎-哥德尔机」让AI学会自己进化
人工智能·openai
WWZZ20254 小时前
快速上手大模型:深度学习2(实践:深度学习基础、线性回归)
人工智能·深度学习·算法·计算机视觉·机器人·大模型·slam
初级炼丹师(爱说实话版)4 小时前
算法面经常考题整理(1)机器学习
人工智能·算法·机器学习