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

九江专业的企业网站建设公司微博营销方案

九江专业的企业网站建设公司,微博营销方案,wordpress装饰插件,外贸出口工艺品怎么做外贸网站“包装”在Python 编程中经常会被提到的一个术语。意思是对一个已存在的对象进行包装#xff0c;可以是对一个已存在的对象#xff0c;增加#xff0c;删除#xff0c;或者修改功能。可以包装任何类型(type)作为一个类(class)的核心成员#xff0c;以使新对象的行为模仿你…“包装”在Python 编程中经常会被提到的一个术语。意思是对一个已存在的对象进行包装可以是对一个已存在的对象增加删除或者修改功能。可以包装任何类型(type)作为一个类(class)的核心成员以使新对象的行为模仿你想要的数据类型中已存在的行为并且去掉你不希望存在的行为。授权是包装的一个特性实现授权的关键点就是覆盖__getattr__()方法在其中包含一个对getattr()内建函数的调用。特殊方法__getattr__()的工作方式是当搜索一个属性时任何局部对象首先被找到(定制的对象)。如果搜索失败了则__getattr__()会被调用。换言之当引用一个属性时Python 解释器将试着在局部名称空间中查找那个名字如果没有在局部字典中找到则搜索类名称空间最后如果两类搜索都失败了搜索则对原对象开始授权请求此时__getattr__()会被调用。包装的一个简单例子classWrapMe(object):def __init__(self, obj):self.__data objdefget(self):return self.__datadef __repr__(self):return ‘self.__data‘def __str__(self):return str(self.__data)def __getattr__(self, attr):return getattr(self.__data, attr)这里将用到复数因为所有Python数值类型只有复数拥有属性 wrapcomplex WrapMe(3.54.2j)wrapcomplex(3.54.2j)wrapcomplex.real3.5wrapcomplex.imag4.2wrapcomplex.conjugate()(3.5-4.2j)wrapcomplex.get()(3.54.2j)访问复数的三种属性我们的自定义类中一种都没有定义对这些属性的访问是通过getattr()方法授权给对象。调用get()方法没有授权因为它是为我们的对象定义的。下一个使用包装类的例子用到一个列表。我们将会创建对象然后执行多种操作每次授权给列表方法。 wraplist WrapMe([123, foo, 45.67])wraplist.append(bar)wraplist.append(123)wraplist[123, foo, 45.67, bar,123]wraplist.index(45.67)2wraplist.count(123)2wraplist.pop()123wraplist[123, foo, 45.67, bar]注意只有已存在的属性是在此代码中授权的。特殊行为没有在类型的方法列表中不能被访问因为它们不是属性。一个例子是对列表的切片操作它是内建于类型中的而不是像append()方法那样作为属性存在的。也就是说切片操作符是序列类型的一部分并不是通过__getitem__()特殊方法来实现的。 wraplist[2]Traceback (most recent calllast):File, line 1, inTypeError:WrapMe objectdoes not support indexing然而还有一种作弊的方法访问实际对象通过get()方法和它的切片能力. reallist wraplist.get() reallist[3]bar这就是为什么需要实现get()方法了----仅仅是为了我们需要取得对原对象进行访问这种情况。另外一个例子描述了一个包装文件对象的类。我们的类与一般的文件对象行为完全一样, 除了在写模式中字符串只有全部为大写时才写入文件。下面提供一个文件类对象定制write()方法同时给文件对象授权其它的功能classCapOpen(object):def __init__(self, fn,moder, buf-1):self.fileopen(fn, mode, buf)def __str__(self):returnstr(self.file)def __repr__(self):returnself.filedefwrite(self, line):self.file.write(line.upper())def __getattr__(self, attr):returngetattr(self.file, attr) f CapOpen(/tmp/xxx,w)f.write(delegation example\n)f.write(faye is good\n)f.write(at delegating\n)f.close()f可以看到唯一不同的是第一次对CapOpen()的调用而不是open()。除了write()所有属性都已授权给文件对象: f CapOpen(/tmp/xxx, r) for eachLine inf:...printeachLine,...DELEGATION EXAMPLEFAYE IS GOODAT DELEGATING
http://www.yutouwan.com/news/268610/

相关文章:

  • 奉贤庄行网站建设手机wap网站 php
  • 做购物网站数据库分析可以用来制作网页的软件有哪些
  • 大气学校网站松江区做网站
  • 男女在一起做恶心的事网站建站之星怎么用
  • 免费做思维导图的网站企业网站建设定制
  • 国外营销型网站建设利用腾讯云建设网站
  • 搭建网站费用是多少企业融资是什么意思
  • php网站开发案例pdf网站建设管理总结
  • 网站建设方面的优劣势分析爱牛网络
  • 网站优化关键词是怎么做的做豆腐交流经验的网站
  • 什么主题 wordpress百度seo优化推广公司
  • 学校网站模板 红色wordpress 邀请链接
  • 连云港建设企业网站惠州网络推广费用
  • 广州建设诚信评分网站wordpress访问加速
  • 杭州网站优化方案百度搜索引擎广告位的投放
  • 在线制作网站乔拓云长沙市建设发展集团有限公司网站
  • 公司内部网站建设的意义网站设计待遇
  • 西安开发网站的公司闸北区网站设计与制
  • 做外贸生意的网站黄冈建设培训中心网站
  • 网站建设和定位如何将网址做成链接
  • 一个网站主机多少钱一年郑州百度建网站
  • 在门户网站中网站建设排名软件
  • 怎么做微商网站山西建设厅官方网站
  • 珠海门户网站建设费用wordpress时间轴页面
  • 中国建设银行招聘网站首页电影网站开发教程
  • 重庆的做网站公司怎么安装网站代码
  • 济南网站建设 推搜点企业咨询服务合同模板
  • 百度网站评分上海建设工程造价网站
  • wordpress the_field一流的常州网站优化
  • 手机网站生成代码做网站多少钱西宁君博专注