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

闸北区网站建设网页制百度关键词如何优化

闸北区网站建设网页制,百度关键词如何优化,阿里巴巴网站建设建议,做试管的网站Python喜欢序列 Python 数据模型的哲学是尽量支持基本协议。对序列来说,即便是最简 单的实现,Python 也会力求做到最好。 图 11-1 展示了定义为抽象基类的 Sequence 正式接口。 现在,看看示例 11-3 中的 Foo 类。它没有继承 abc.Sequence&a…

Python喜欢序列

Python 数据模型的哲学是尽量支持基本协议。对序列来说,即便是最简
单的实现,Python 也会力求做到最好。

图 11-1 展示了定义为抽象基类的 Sequence 正式接口。

Sequence 抽象基类和 collections.abc 中相关抽象类的
UML 类图,箭头由子类指向超类,以斜体显示的是抽象方法

现在,看看示例 11-3 中的 Foo 类。它没有继承 abc.Sequence,而且
只实现了序列协议的一个方法:getitem (没有实现__len__ 方
法)。

示例 11-3 定义__getitem__ 方法,只实现序列协议的一部分,
这样足够访问元素、迭代和使用 in 运算符了

>>> class Foo:
... def __getitem__(self, pos):
... return range(0, 30, 10)[pos]
...
>>> f = Foo()
>>> f[1]
10
>>> for i in f: print(i)
...
0 10
20
>>> 20 in f
True
>>> 15 in f
False

虽然没有 __iter__ 方法,但是 Foo 实例是可迭代的对象,因为发现有
__getitem__ 方法时,Python 会调用它,传入从 0 开始的整数索引,
尝试迭代对象(这是一种后备机制)。尽管没有实现 __contains__
法,但是 Python 足够智能,能迭代 Foo 实例,因此也能使用 in 运算
符:Python 会做全面检查,看看有没有指定的元素。

综上,鉴于序列协议的重要性,如果没有__iter__ 和__contains__
方法,Python 会调用__getitem__ 方法,设法让迭代和 in 运算符可
用。

第 1 章定义的 FrenchDeck 类也没有继承 abc.Sequence,但是实现了
序列协议的两个方法:__getitem__ __len__。如示例 11-4 所示。
示例 11-4 实现序列协议的 FrenchDeck 类(代码与示例 1-1 相
同)

import collections
Card = collections.namedtuple('Card', ['rank', 'suit'])
class FrenchDeck:ranks = [str(n) for n in range(2, 11)] + list('JQKA')suits = 'spades diamonds clubs hearts'.split()def __init__(self):self._cards = [Card(rank, suit) for suit in self.suitsfor rank in self.ranks]def __len__(self):return len(self._cards)def __getitem__(self, position):return self._cards[position]

第 1 章那些示例之所以能用,大部分是由于 Python 会特殊对待看起来像
是序列的对象。Python 中的迭代是鸭子类型的一种极端形式:为了迭代
对象,解释器会尝试调用两个不同的方法。
下面再分析一个示例,着重强调协议的动态本性。

http://www.dtcms.com/wzjs/441365.html

相关文章:

  • 杭州建筑市场信用网杭州网站优化效果
  • 网站建设优化价格百度优化教程
  • 成都维尼网络 网站建设seo排名优化软件
  • 用ps切片做网站网站服务器查询工具
  • 营销网站建设步骤短链接生成
  • 大连建站平台怎么制作一个自己的网站
  • 唐山做网站公司百度推广公司哪家比较靠谱
  • 网站建设与维护banner公司网站设计的内容有哪些
  • 男女做那个暖暖网站百度广告电话号码
  • 电信宽带做网站舆情监测
  • flash网站制作实例大数据技术主要学什么
  • 电子商务网站建设与管理 技能实训东莞seo排名公司
  • 直播做愛网站国外找片子有什么好的关键词推荐
  • 网站建设推广 公司引流客户的最快方法是什么
  • 做终端客户网站全网seo优化电话
  • 毕设做的网站可以用模板改吗济南网络优化哪家专业
  • 在线做生存曲线的网站有哪些网络营销都有哪些方法
  • 川畅科技搜搜 网站设计网站注册流程和费用
  • 西安网站建设企业百度手机点击排名工具
  • 代码大全可复制免费排名优化方案
  • 服装网站制作广告软文范例
  • 重庆网站建设公司排名扬州网站推广公司
  • 分析网站建设流程公司网站怎么注册
  • 网站开发是什么意思啊宝安网站建设
  • dw做网站的实用特效手机系统优化软件哪个好
  • 自己做网站用买域名吗邯郸seo排名
  • 怎样做google网站传媒网站
  • 网站建设与网页制作案例教程济南seo优化公司助力网站腾飞
  • 深圳网站建设推广论坛品牌营销策划有限公司
  • 黑河网站建设公司枸橼酸西地那非片