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

好的网站首页建设公司网站托管费用 优帮云

好的网站首页建设公司,网站托管费用 优帮云,外贸衣服是什么意思呢,修改仪表盘WordPress任务 你的类会用到某些 property 实例,而 getter 或者 setter 都是一些千篇一律的获取或者设置实例属性的代码。你希望只用指定属性名,而不用写那些非常相似的代码。 解决方案 需要一个工厂函数,用它来处理那些 getter 或 setter 的参数是…

任务

你的类会用到某些 property 实例,而 getter 或者 setter 都是一些千篇一律的获取或者设置实例属性的代码。你希望只用指定属性名,而不用写那些非常相似的代码。

解决方案

需要一个工厂函数,用它来处理那些 getter 或 setter 的参数是字符串的情况,并将正确的参数封装到一个函数中,然后将其余的工作委托给Python内建的property:

def xproperty(fget,fset,fdel = None,doc = None):if isinstance(fget,str):attr_name = fgetdef fget(obj):return getattr(obj,attr_name)elif isinstance(fset,str):attr_name = fsetdef fset(obj,val):setattr(obj,attr_name,val)else:raise TypeError,'either fqet or fset must be a str'return property(fget,fset,fdel,doc)

讨论

Python 内建的 property 非常有用,但它也有一点小小的烦人之处(有 Delphi 经验的开发者能比较容易地看出这一点)。尤其是当你同时需要一个setter和一个 getter 时,其中的一个需要执行一些额外的代码,而另一个则只需简单地读取或者写入实例的属性。此时,property 需要两个函数作为它的参数。其中的一个函数就是所谓的“样板代码“(即重复的长篇大论的冗余代码,既无趣也容易滋生 bug)。
举个例子:

class Lower(object):def __init__(self,s=''):self.s = sdef _getS(self):return self.sdef _setS(self,s):self._s = s.lower()s = property(_getS,_setS)

方法_getS 就是样板代码,但你仍需要编写这些代码,因为你要将它传递给 property。使用本节的方案,可以让你的代码变得更简洁,同时丝毫不改变原意:

class Lower(object):def __init__(self,s = ''):self.s = sdef setS(self,s):self._s = s.lower()s = xproperty('_s',_setS)

在这个小例子中,这点简化看起来没省掉多少代码,但是如果在一个大项目的所有代码中应用这种简化,省去的几余代码将极为可观。
本节解决方案中的工厂函数 xproperty 的实现对参数有比较严格的要求:它需要你同时传入 fet和 fset,而且其中之一必须是一个字符串。要求两者都是字符串没有什么用处如果两者都不是字符串,或者你只需要其中的一个,可以(且应当)直接使用内建的property。但用 xproperty 预先检查会更好,它既不会带来什么大的性能损失也不会造成任何功能上的损失。

http://www.dtcms.com/a/617541.html

相关文章:

  • 企业网站策划方案模板品牌设计网站建设
  • 微科技h5制作网站模板下载网站建设龙卡要审批多久时间
  • 响应式 网站 设计软件苏州网站开发网站开发费用
  • 要建网站建立平台的目的
  • ui在线设计网站在线设计网站海报
  • 网站建设和网络推广外包wordpress 云解析视频教程
  • 九寨沟城乡建设官方网站drupal 做的网站
  • 站长工具网站测速微信红包开发平台
  • 网站关键词排名优化系统通信公司网站建设
  • 做网站和APP需要注册公司吗全球网站访问量排名
  • 电商企业网站源码邢台网站123
  • 必要这个网站怎么样域名买了之后如何建设网站
  • 网站建站论坛装修计算器在线计算
  • 消费返利系统网站建设网站底部图片
  • 公司网站应该怎么做网络工程师免费教程
  • wordpress 建站 教程网站建设渠道
  • 可以做内容的网站27岁女生学前端开发晚吗
  • 网站报价内容花店网站开发参考文献
  • wordpress 文章idseo完整教程视频教程
  • 网站建设实践报告绪论阿里云自助建站教程
  • 仙桃有哪些做网站的公司百度关键词优化快速排名软件
  • 做一个网站flash收多少钱东莞网站建设排名
  • 写出电子商务网站的建设流程wordpress 无法访问文章
  • 中国建设网站营销计划的主要内容
  • 肇庆市专注网站建设平台竞价托管外包代运营
  • 如何做好网站管理工作新建网站
  • 曲沃网站开发namesilo wordpress
  • 网站制作遨游免费深度网络科技是干嘛的
  • 网站建设项目化教程事业单位网站建设的账务处理
  • 毕业设计做网站难吗wordpress原创保护