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

外国网站的浏览器在线视频下载网站如何做

外国网站的浏览器,在线视频下载网站如何做,网站传送门怎么做,百度推广的定义一 装饰器的使用 (property) property 是 Python 中用于创建属性的装饰器。它的作用是将一个类方法转换为类属性#xff0c;从而可以像 访问属性一样访问该方法#xff0c;而不需要使用函数调用的语法。使用 property 主要有以下好处#xff1a; 封装性和隐藏实现细节property) property 是 Python 中用于创建属性的装饰器。它的作用是将一个类方法转换为类属性从而可以像 访问属性一样访问该方法而不需要使用函数调用的语法。使用 property 主要有以下好处 封装性和隐藏实现细节通过使用 property 装饰器你可以将属性的访问封装在方法内部从而隐藏了实现细节。这有助于防止用户直接访问和修改类的内部状态提高了类的封装性。 属性访问的一致性将方法转换为属性后可以使用点运算符 (.) 来访问属性与直接访问属性时的语法一致。这增强了代码的可读性和一致性。 计算属性值你 可以在 property 方法中添加逻辑来计算属性的值。这允许你根据需要动态生成属性而不必存储额外的数据。 属性验证和保护property 方法允许你在 设置属性值之前进行验证和保护。你可以在 property 的 setter 方法中添加验证逻辑确保属性值符合特定条件。 适用于重构如果你决定更改属性的实现方式可以在不更改类的用户代码的情况下重构 property 方法。这有助于维护代码的兼容性。 class Person:def __init__(self, gender):self.__gender gender # 私有的property # 装饰器def gender(self):return self.__gendergender.setterdef gender(self, value):if value ! boy and value ! girl:raise ValueError(Gender must be boy or girl)else:self.__gender valueif __name__ __main__:p Person(boy)print(p.gender) # boyp.gender girl # gender.setterprint(p.gender) # girlp.gender other # gender.setterprint(p.gender) # ValueError: Gender must be boy or girl 二 自定义装饰器 def logger(func): # 被装饰的函数作为方法的参数def class_time():print(二、四、六晚上上课)print(_ * 30)func()print(_ * 30)print(大概下课时间22:30)return class_time# 函数式 logger def work():print(老师在上课)logger def work2():print(学生不想上课)if __name__ __main__:work()print(\n)work2() 三 装饰器传参和函数传参 1 *args, **kwargs   # 自定义位置参数和关键字参数 from functools import wrapsdef main_logger(time_key二、四、六晚上八点, end_time21:30):def logger(func):wraps(func)def class_time(*args, **kwargs):print(上课时间, time_key)func(*args, **kwargs)print(下课时间, end_time)return class_timereturn logger# 核心功能 main_logger() def work():print(三月要上课啦)main_logger(time_key一、三、五晚上) def work2():print(老子今天不上课)main_logger() def work4(name, subject):print(f{name}在上课 {subject}课程)if __name__ __main__:# work()# work2()work4(march, dj) 四 使用对象做装饰器 class Logs:def __init__(self, start_time二、四、六晚上20:00, end_time2130):self.start_time start_timeself.end_time end_time# 重写object类中 call 方法def __call__(self, func): # func是被装饰的函数def class_time(*args, **kwargs):print(上课时间, self.start_time)func(*args, **kwargs)print(下课时间, self.end_time)return class_timeLogs() # 类对象装饰 def work(name, subject):print(f{name}在上 {subject})if __name__ __main__:work(your, 奇奇怪怪的课) 五 偏函数 functools.partial需要传入原函数和需要传入的参数 下面两种方式等价 import functools int3 functools.partial(int, base16) print(int3(abd)) 直接写 def int2(num, base16):return int(num, base)print(int2(abd)) 六 动态修改类状态 staticmethod 和 classmethod 是 Python 中用于定义静态方法和类方法的装饰器它们有不同的作用和用法。 staticmethod 静态方法是定义在类中的方法不依赖于类的实例也不依赖于类的状态。它通常用于那些不需要访问实例属性或方法的情况可以看作是类的工具函数。静态方法的第一个参数通常不是 self 或 cls而是一个普通参数用于传递方法所需要的数据。 classmethod 类方法是定义在类中的方法但它与类的实例无关而是依赖于类本身。类方法的第一个参数通常是 cls用于表示类本身可以访问类的属性和调用其他类方法。类方法通常用于工厂方法或者在创建实例之前对类进行一些操作。 6.1 定义类 class Person:def __init__(self, name, age):self.name nameself.age ageif __name__ __main__:p Person(march, 20)print(name:, p.name)print(age:, p.age) 6.2 添加属性 p.gender boy # 动态添加属性 print(gender:, p.gender) 6.3 动态添加方法 def fun():print(我是一个普通函数即将成为一个实例 方法)# 动态添加方法 p.show fun p.show()def fun2(self):print(我也是一个普通函数第一个参数是self类成员方法的第一个参数就是self)# 第二种添加方式 p.show2 types.MethodType(fun2, p) p.show2() 6.4 动态添加静态方法 staticmethod def static_func():print(马上成为Person类中的静态方法, staticmethod)# 动态添加静态方法, 通过类名调用 Person.sf static_func Person.sf() 6.5 动态添加类方法 classmethod def class_func(cls):print(马上成为Person类中的类方法, class_method)# 动态添加类方法 Person.cf class_funcPerson.cf()# 动态添加类方法 print(dir(Person)) print(dir(p)) 6.6 限制属性的添加 __slots__现在属性的添加 class Person:__slots__ (name, age)def __init__(self, name, age):self.name nameself.age ageif __name__ __main__:p Person(march, 20)p.gender boy # __slots__ (name, age) 限制可以添加的属性print(gender:, p.gender)
http://www.hkea.cn/news/14301643/

相关文章:

  • 网站调整方案wordpress主题位置
  • 原创手做网站平台企业是什么意思
  • cms网站访问人数爱站权重是怎么计算的
  • 如何免费开自己的网站装饰公司门头
  • 怎样拿电脑做网站网站 月15g流量够用吗
  • 做购物网站需要什么资质节能 建材 工程标准
  • 桂林学校网站制作wordpress前端库加速
  • 天津网络网站公司苏州整站优化
  • 汽车网站网站建设公司哪家
  • 网站开发需要看什么书上海猎头公司电话
  • 创造有价值的网站福州网站建设好的公司
  • 专业做企业活动的趴网站wordpress 判断加密
  • 如何选择做pc端网站移动宽带过期了怎么续费
  • 免费兼职一单一结合肥百度seo代理
  • 网站优化要多少钱做个app好还是做网站好
  • 信息公开网站建设大连门户网站开发
  • 网站建设 部署与发布 答案wordpress文章显示摘要
  • 网站建设风格有哪些wordpress图片小程序
  • 怎么建立网站 个人进一步优化落实
  • 兼职做网站平台天津公司网站的建设
  • 网站psd设计稿seo做的好的网站有哪些
  • 搭建三合一网站网页设计的交流网站
  • 网站引导页怎么设置免费域名注册查询入口
  • 铁道部建设监理协会网站网站开发移动app
  • python工程打包供网站开发调用衡水冀县做网站
  • 网站建设与管理认识wordpress静态文件目录下
  • 做标记网站网站及管理系统
  • 即时设计网站网站开发美工绩效考核
  • 软件网站建设公司做甜品网站栏目
  • 怎么做外贸企业网站fotor懒设计