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

厂房网络推广平台重庆seo整站优化系统

厂房网络推广平台,重庆seo整站优化系统,在台湾做色聊的网站犯法不,网站模型怎么做的4.10.5 模拟篇 4.10.5.1 call 通过__call__魔法方法可以像使用函数一样使用对象。通过括号的方式调用,也可以像函数一样传入参数: from icecream import icclass Multiplier:def __init__(self, mul):self.mul muldef __call__(self, arg):return se…

4.10.5 模拟篇

4.10.5.1 call

通过__call__魔法方法可以像使用函数一样使用对象。通过括号的方式调用,也可以像函数一样传入参数:

from icecream import icclass Multiplier:def __init__(self, mul):self.mul = muldef __call__(self, arg):return self.mul * argo = Multiplier(3)
ic(o(4))

11:15:45|> o(4): 12

4.10.5.2 len

当我们对某个自定义对象使用len函数时,其实就是在调用这个魔术方法。

from icecream import icclass MyList:def __init__(self, data):self._data = datadef __len__(self):return len(self._data)x = MyList([1, 2, 3])
ic(len(x))
if x:ic('OK')

11:23:21|> len(x): 3
11:23:21|> ‘OK’

当我们用自定义的对象作为判断条件时,如果我们的自定义对象中没有定义__bool__魔术方法,那么会通过__len__魔术方法进行判断,不为空则返回True。

4.10.5.3 getitemsetitem

当我们尝试用[]的形式调用或赋值对象中的元素时会用调用这两个魔术方法:

from icecream import icclass MyList:def __init__(self, data):self._data = datadef __getitem__(self, key):return self._data[key]def __setitem__(self, key, value):self._data[key] = valuex = MyList([1, 2, 3])
ic(x[2])
x[2] = 5
ic(x[2])

14:48:12|> x[2]: 3
14:48:13|> x[2]: 5

4.10.5.4 delitem

在del obj[n]时会调用这个魔术方法。

from icecream import icclass MyList:def __init__(self, data):self._data = datadef __getitem__(self, key):return self._data[key]def __delitem__(self, key):self._data = self._data[0:key] + self._data[key + 1:]x = MyList([1, 2, 3])
ic(x[1])
del x[1]
ic(x[1])

14:55:20|> x[1]: 2
14:55:20|> x[1]: 3

4.10.5.5 reversed

reversed:reverse(obj)
当用Python内置的函数reverse对象时会调用对象内的该方法。

from icecream import icclass MyList:def __init__(self, data):self._data = datadef __getitem__(self, key):return self._data[key]def __reversed__(self):return MyList(self._data[::-1])x = MyList([1, 2, 3])
ic(reversed(x)._data)

15:03:55|> reversed(x)._data: [3, 2, 1]

4.10.5.6 contains

contains:item in obj
做in操作时会调用该方法。

from icecream import icclass MyList:def __init__(self, data):self._data = datadef __contains__(self, item):return item in self._datax = MyList([1, 2, 3])
ic(1 in x)
ic(4 in x)

15:05:22|> 1 in x: True
15:05:22|> 4 in x: False

4.10.5.7 iter

iter:iter(obj)
返回对象的迭代器(iter)时会调用该方法。

4.10.5.8 missing

这个魔术方法必须是Python的字典类型数据的子类中才有作用。当在字典中找一个key而找不到时,会调用这个方法。

from icecream import icclass MyDict(dict):def __missing__(self, key):return 1d = MyDict()
ic(d[0])

15:10:06|> d[0]: 1

4.10.5.9 enterexit

这两个魔术方法和上下文管理器有关,在之前的章节中已经详细介绍了。这里就不赘述了。

http://www.shuangfujiaoyu.com/news/61266.html

相关文章:

  • 慈溪做网站公司哪家好北京网讯百度科技有限公司
  • 网站新闻专题怎么做网络营销推广策略有哪些
  • 做网站开发要装什么软件有什么好的推广平台
  • 先锋设计网站如何搭建网站
  • 网站优化建设上海seo专业术语
  • wordpress网站后台要怎么登陆磁力宅在线搜种子
  • 有什么做视频的素材网站好看的网页设计作品
  • 网站如何做水晶按钮域名服务器ip地址查询
  • 织梦装修设计网站模板百度提交网站的入口地址
  • 网站空间购买多钱咖啡的营销推广软文
  • 男男sm怎么做视频网站微信小程序开发多少钱
  • 推荐西安优秀的响应式网站建设公司北京seo营销公司
  • 连云港网站建设开发百度人工客服在线咨询电话
  • 个人定制网站湖南靠谱seo优化
  • 网站建设全教程百度软件安装
  • adobe 网站制作软件有哪些自己怎么开发app软件
  • 定西谁做网站百度注册页面
  • 平湖模板网站建设公司今天热搜前十名
  • 有什么好的网站做推广的怎么优化自己公司的网站
  • 河南手机网站建设公司排名成都新站软件快速排名
  • 聊天系统源码苏州百度 seo
  • 企业网站建设及推广seo的优化方案
  • 建设美食电子商务网站外包网络推广公司推广网站
  • 企业网站如何上存sq网站推广
  • wordpress 坐标seo发包排名软件
  • 后台的企业网站模板新东方烹饪学校学费价目表
  • 网站建设项目设计书seo管理是什么
  • 做网站应达到什么效果搜索引擎优化网站
  • 2018年淘宝客网站怎么做网站建设网络推广公司
  • 承德市住房和城乡建设局网站市场营销公司有哪些