当前位置: 首页 > wzjs >正文

担路做网站全国免费发布信息平台

担路做网站,全国免费发布信息平台,男男做暧暧视频网站,重庆璧山网站建设知识点回顾 类的装饰器装饰器思想的进一步理解:外部修改、动态类方法的定义:内部定义和外部定义 作业:复习类和函数的知识点,写下自己过去29天的学习心得,如对函数和类的理解,对python这门工具的理解等&…
知识点回顾
  1. 类的装饰器
  2. 装饰器思想的进一步理解:外部修改、动态
  3. 类方法的定义:内部定义和外部定义

作业:复习类和函数的知识点,写下自己过去29天的学习心得,如对函数和类的理解,对python这门工具的理解等,未来再过几个专题部分我们即将开启深度学习部分。

一、类复习

1、类的定义和初始化

class  Circle:# 类的初始化方法,有个默认参数def __init__(self,radius=1):self.radius=radius# 类的普通方法def calculate_area(self):area=math.pi*self.radius**2return area# 类的普通方法def calculate_circumference(self):circumference=2*math.pi*self.radiusreturn circumferencecircle=Circle(5)    # 实例化类,使用初始化方法
print(f"半径:{circle.radius}")
print(f"面积:{circle.calculate_area():.2f}")
print(f"周长:{circle.calculate_circumference():.2f}")

2、类的继承

# 先沿用之前定义的teacher类
class Teacher:def __init__(self, name, subject, age):self.name = nameself.subject = subjectself.age = agedef teach_lesson(self):print(f"{self.name}正在教{self.subject}。")def criticize(self, student_name):print(f"{self.name}正在批评{student_name}。")# 继承 Teacher 类,起名特级教师
class MasterTeacher(Teacher): # 1. 继承需要在括号中指定父类def __init__(self, name, subject, age, experience_years):# 2. 继承的时候需要调用父类的构造方法,所以需要传入父类的参数,同时也可以传入自己的参数# 调用父类的构造方法初始化基本属性super().__init__(name, subject, age) # 3. 调用父类的构造方法,这里的super()是一个内置函数,返回父类的实例# 4. 此时子类自动拥有了父类的属性和方法# 添加子类特有的属性self.experience_years = experience_years # 5. 子类特有的属性可以在这里定义# 重写父类方法,增强功能-----如果子类定义了与父类同名的方法,子类实例会优先调用子类的方法。def teach_lesson(self): # 6. 重写父类的方法print(f"{self.name}(特级教师)正在用高级方法教授{self.subject}。")# 新增子类特有的方法def give_lecture(self, topic): print(f"{self.name}正在举办关于{topic}的讲座。")# 创建子类实例
master = MasterTeacher("王教授", "数学", 45, 20)# 调用继承的方法
master.teach_lesson()     # 调用重写的父类的方法
master.criticize("李同学")  # 调用父类的方法,如果不修改方法,则可以直接继承父类的方法# 调用子类特有的方法
master.give_lecture("微积分")  # 调用子类新增的方法

3、类装饰器

# 定义类装饰器:为类添加日志功能
def class_logger(cls):# 保存原始的 __init__ 方法original_init = cls.__init__def new_init(self, *args, **kwargs):# 新增实例化日志print(f"[LOG] 实例化对象: {cls.__name__}")original_init(self, *args, **kwargs)  # 调用原始构造方法# 将类的 __init__ 方法替换为新方法cls.__init__ = new_init# 为类添加一个日志方法(示例)def log_message(self, message):print(f"[LOG] {message}")cls.log = log_message  # 将方法绑定到类,这是一种将外部函数添加为类的属性的方法return cls# 定义简单打印类,应用装饰器
# 同样是语法糖的写法
@class_logger
class SimplePrinter:def __init__(self, name):self.name = name  # 构造方法:初始化名称def print_text(self, text):"""简单打印方法"""print(f"{self.name}: {text}")# 使用示例
printer = SimplePrinter("Alice")  # 实例化时触发装饰器的日志
printer.print_text("Hello, World!")  # 调用普通方法
printer.log("这是装饰器添加的日志方法")  # 调用装饰器新增的方法

二、函数复习

1、函数的定义和参数

def func(a,b,c=3,*args,**kwargs):  # 位置参数,默认参数,可变参数,关键字参数print(f"a={a},b={b},c={c},args={args},kwargs={kwargs}")func(1,2,3,4,5,6,7,8,9,name="zs",age=18)  

2、函数装饰器

def logger(func):def wrapper(*args, **kwargs):  # args 是元组,kwargs 是字典print(f"开始执行函数 {func.__name__},参数: {args}, {kwargs}")result = func(*args, **kwargs)print(f"函数 {func.__name__} 执行完毕,返回值: {result}")return resultreturn wrapper@logger
def multiply(a, b):return a * b multiply(2, 3)

三、心得体会

函数将某个具体功能独立出来,实现代码复用。比如计算圆的面积,每次计算只需调用函数。

类是相似对象的抽象体,包含属性和方法。比如定义圆,每个实体圆都具有半径这个属性和计算面积这个方法。类通过继承和多态来实现代码复用。

python句法简洁,高效,一切皆可是对象。此外,还支持大量的标准库和第三方库,前面学习过程中用到了numpy,pandas,sklearn,os,time等,未来进入深度学习会对库进一步认识和理解。

http://www.dtcms.com/wzjs/260281.html

相关文章:

  • 关于设计方面的网站东莞优化seo
  • 武汉做网站推广哪家好网站关键词快速排名软件
  • 绿盒子网站建设案例青岛网站推广关键词
  • 如何快速提升自己网站搜索优化官网
  • 做明星同款的网站客服系统网页源码2022免费
  • 网站的备案手续百度智能建站系统
  • 纪检网站建设方案google play官网
  • 切实加强政府网站建设与管理制作网页用什么软件
  • 做web网站常用框架百度账户托管运营
  • 代账公司注册条件沈阳优化推广哪家好
  • 宣传片制作公司南京朝阳区seo搜索引擎优化介绍
  • 交易网站seo怎么做网店代运营合同
  • 自学java 做网站 多久企业门户网站模板
  • 网站开发多久能学会做seo排名好的公司
  • 网站代码开发定制线上营销怎么推广
  • 网页网站导读怎么做一站式海外推广平台
  • 深圳网站建设南山移动端排名优化软件
  • 网站是不是每年都要续费深圳全网营销平台排名
  • 网站切版教程百度指数分析平台
  • 做网站收入怎么样口碑营销的模式
  • 用jsp做电影网站的界面seo百度快照优化公司
  • 专门做电脑壁纸网站品牌策划ppt案例
  • 武安网站建设培训平台有哪些
  • 网站开发原始数据惠州百度推广排名
  • 企业公司官网网站女生学网络营销这个专业好吗
  • 网站开发 自我评价百度网盘搜索引擎
  • 中国化学工程第九建设公司网站广东省人大常委会
  • 大连软件公司排行东莞网络排名优化
  • 包车哪个网站做的最好网络营销推广方式案例
  • 青岛网站建设康之迅好看的seo网站