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

在线做简单的网站十大营销模式

在线做简单的网站,十大营销模式,网站粘度,wordpress 照片墙 插件目录 属性和方法静态属性/方法、普通属性/方法、类方法保护和私有属性/方法魔术方法构造方法(\_\_new__/\_\_init\_\_)析构方法(\_\_del__)调用方法#xff08;\_\_call__#xff09;toString方法\_\_str__、\_\_repr\_\_\_\_getitem__、setitem、delitem\_\_add__、\_\_gt\_… 目录 属性和方法静态属性/方法、普通属性/方法、类方法保护和私有属性/方法魔术方法构造方法(\_\_new__/\_\_init\_\_)析构方法(\_\_del__)调用方法\_\_call__toString方法\_\_str__、\_\_repr\_\_\_\_getitem__、setitem、delitem\_\_add__、\_\_gt\_\_方法with \_\_enter__、\_\_exit\_\_ 内置属性及其功能 python自省python元类抽象基类 属性和方法 静态属性/方法、普通属性/方法、类方法 class A():name changsha # 静态属性,类属性def __init__self):self.countrychina # 普通属性实例属性#普通实例方法#接收的第一个参数就代表实例本身def normal_method(self,name):pass# 类方法, 使用classmethod.装饰的方法称为类方法# 接收的第一个参数是类classmethoddef class_method(cls,name):pass# 静态方法 使用staticmethod装饰的方法不装饰的话实例调用该方法时默认会传递实例对象给方法的这样就会报错# 可以接收参数也可以不接受参数参数不代表实例也不代表类staticmethoddef static_method(name):pass实例可以调用三种方法用类去调用实例方法时需手动传入一个实例 保护和私有属性/方法 class test:name _name # 保护属性__name # 私有属性def _func(self): # 保护方法passdef __func(self): # 私有方法pass对于保护属性和方法使用起来与普通属性和方法没有区别只是在使用import * 时不能被导入 对于私有属性和方法其实是伪私有。不过是将双下划线的属性或方法改了一个名字为 _类__标识名 class test:__name 私有属性 # 私有属性def __func(self): # 私有方法print(私有方法)t test() print(t._test__name) # 通过这样的格式即可调用 t._test__func()魔术方法 所有以双下划线开头和结尾的方法统称为魔术方法magic method 这种魔术方法不需要调用在特定场景下自动执行。 由于markdown格式下对下划线做纠正太麻烦了所以下面有的地方可能格式有些不正确但能明白我指的是那个方法就行 构造方法(__new__/__init__) • new创建实例 • init初始化实例 析构方法(__del__) 在实例释放、销毁的时候自动执行的通常用于做一些收尾工作 如关闭一些数据库连接关闭打开的临时文件等 class a:def __del__(self):print(del)a1 a() del a1 # 此时就会自动调用del方法不手动del时等程序执行结束时也会自动执行del方法调用方法__call__ 把类实例化后的对象当做函数来调用的时候自动被调用 class a:def __call__(self):print(call)a1 a() a1() # 此时就会执行call方法像函数、类都是通过call方法来实现的toString方法__str__、__repr__ 有str方法时使用str方法没有就使用repr方法 class A():def __str__(self):return str...Adef __repr__(self):return repr...A a A() print(a) # print一个实例时就是调用str方法 str_a str(a) # 使用str()函数时也是调用实例中的str方法# 当在交互式命令行中输入a之后回车就会调用repr方法输出内容__getitem__、setitem、delitem 使类的实例能够像字典一样被使用适合用来进行配置 class A():def __init__(self):self.data {} # 初始化个空字典def __getitem__(self, key):return self.data.get(key, 0) # key存在返回value不存在返回0def __setitem__(self, key, value):self.data[key] valuedef __delitem__(self, key):del(self.data[key]) a A() a[name] sc # 此时调用setitem方法name传给keysc传给value print(a[name]) # 此时调用getitem方法 del a[name] # 调用delitem方法__add__、__gt__方法 自定义 加法 和 大于方法 class A:def __init__(self,num):self.time time.time()self.num numdef __add__(self,x):print(this is add)return self.num xdef __gt__(self,other):print(this is gt)return self.time other.time # 根据创建的时间戳来比大小越新创建的越大 a1 A(5) b a1 3 # 调用add方法 print(b is :b) a2 A(4) print(a1a2) # 调用gt方法with __enter__、__exit__ 使用with语句管理的对象 称为 上下文管理器对象 都会实现enter、exit魔术方法 enter做一些初始化工作 exit做一些结束收尾工作释放资源 内置属性及其功能 __dict__:类的属性包含一个字典由类的数据属性组成 __doc__:类的文档字符串 __name__:类名 __module__:类定义所在的模块 __bases__:类的所有父类构成元素 __class__:类型比如类就返回type实例就返回它的父类 python自省 对某一个对象属性(方法)的增删改查 #python自省 print(hasattr(math,xx)) #判断math有没有xx属性 print(setattr(math,xx,1)) #设置math的xx属性为1 print(getattr(math,xx) #获取math的xx属性 print(delattr(math,xx)) #删除math的xx属性def func2():pass setattr(a,func,func2) # 将func2方法添加到a实例中并命名为funcpython元类 创建类的类称之为元类 一些基本类的元类都是type print(str.__class__) # 输出class typeprint(object.__class__) # object是所有类的父类这是从继承的角度 class type # type是创建类中最顶层的类这是从实例和类的角度 # 两者的关系很难说type继承了object但object又由type创建可以自定义一个元类 class MyMate(type): # 继承type类#拦截类的创建# 名字 继承(元组) 方法属性(dict)def __new__(cls,name,bases,attrs):attrs[test] mymate testprint(name,bases,attrs)return type.__new__(cls,name,bases,attrs) class A(metaclassMyMate):passa A() print(a.test)抽象基类 抽象基类 定义了接口规范子类必须实现父类里面的抽象方法 抽象类不能实例化 想定义抽象基类需要先导入ABC模块 from abc import ABC, abstractmethodABC模块提供了一种定义抽象基类的方式是指Abstract Base Classes抽象基类模块。它是Python标准库中的一个模块位于abc包中。 from abc import ABC,abstractmethod #抽象基类 class A(ABC):abstractmethod # 被这个装饰的方法称为抽象方法def eat(self):passdef drink(self): # 没有被abstractmethod装饰的方法为普通方法pass class B(A): # 子类必须实现父类中的抽象方法def eat(self):print(this is eat) b B()
http://www.w-s-a.com/news/25551/

相关文章:

  • 文字网站居中能自己做网站接业务吗
  • 免备案自助建站网站广州珈瑶公司是哪一年注册的
  • ps做网站界面wordpress为图片添加圆角
  • seo优化推广业务员招聘seo顾问服务福建
  • 成都私人网站建设seo网站推广方案策划书
  • 广州网站建设工作室wordpress log
  • 网站后台添加wordpress h1标签优化
  • 自己做网站都需要什么高密 网站建设
  • 网站语言选择郑州本地做团购的网站
  • dw网页设计模板图片谷歌wordpress优化
  • 网站seo优化要怎么做礼品公司怎么做网站
  • 做网页网站需要钱吗提供常州微信网站建设
  • 网站建设文化效果广东网站建设哪家有
  • 毕业设计做网站怎样做特别一点在线网页制作软件
  • html网站代码上海这边敲墙拆旧做啥网站的比较多
  • 微网站怎么用在线crm管理系统
  • 中国城乡建设部人力网站首页如何利用某个软件做一个网站
  • 个人承接网站建设wordpress editor
  • 建站主机 wordpress专业的菏泽网站建设公司
  • 网站响应时间 标准网站建设色调的
  • 网站开发的合同网站建设 设计
  • 网站开发设置网页端口申请免费个人网站空间
  • 制作广告网站的步骤云服务器做网站
  • ipv6可以做网站吗东莞网站建站推广
  • 注册功能的网站怎么做做网站容易还是编程容易
  • wordpress建立目录seo编辑培训
  • 网站怎么群发广州现在可以正常出入吗
  • 微信有网站开发吗多语种网站
  • 深圳网站设计 建设首选深圳市室内设计公司排名前50
  • 上海网站建设 觉策动力wordpress接口开发