【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. 讲解了三个重要的内置方法,灵活使用它们可以提高代码的质量。
相关推荐
致Great12 小时前
Kimi K2.5技术报告解读:视觉-文本联合训练与并行智能体框架
人工智能
阿杰学AI12 小时前
AI核心知识82——大语言模型之AI Value Alignment(简洁且通俗易懂版)
人工智能·ai·语言模型·自然语言处理·aigc·机械学习·ai价值观对齐
小镇cxy12 小时前
OpenSpec 规范开发
人工智能·ai
北京地铁1号线12 小时前
4.2 幻觉抑制策略
大数据·人工智能·深度学习·大语言模型
曲幽12 小时前
FastAPI定时任务全攻略:从入门到避开多进程的坑
python·fastapi·web·async·sqlalchemy·lock·apscheduler·works
森爱。12 小时前
去云论文摘要
人工智能·摘要·去云
Clipp_Huang12 小时前
光笔三维重建
人工智能
跨境卫士—小依12 小时前
跨境电商营销策略
大数据·人工智能·跨境电商·营销策略
玄同76512 小时前
LangChain v1.0+ 与 FastAPI 中间件深度解析:从概念到实战
人工智能·中间件·langchain·知识图谱·fastapi·知识库·rag
AC赳赳老秦12 小时前
DeepSeek一体机部署:中小企业本地化算力成本控制方案
服务器·数据库·人工智能·zookeeper·时序数据库·terraform·deepseek