摘要: 可以看到当seed()没有参数时,每次生成的随机数是不一样的,而当seed()有参数时,每次生成的随机数是一样的,同时选择不同的参数生成的随机数也不一样 阅读全文
posted @ 2019-09-23 23:31 顽强的allin 阅读(11587) 评论(0) 推荐(1) 编辑
摘要: bisect 模块包含两个主要函数,bisect 和 insort,两个函数都利用二分查找算法来在有序序列中查找或插入元素。 2.8.1 用bisect来搜索 bisect(haystack, needle) 在 haystack(干草垛)里搜索needle(针)的位置,该位置满足的条件是,把 ne 阅读全文
posted @ 2019-09-23 23:30 顽强的allin 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 增量赋值运算符 += 和 *= 的表现取决于它们的第一个操作对象。简单起见,我们把讨论集中在增量加法(+=)上,但是这些概念对 *= 和其他增量运算符来说都是一样的。 += 背后的特殊方法是 __iadd__ (用于“就地加法”)。但是如果一个类没有实现这个方法的话,Python 会退一步调用 __ 阅读全文
posted @ 2019-09-23 21:34 顽强的allin 阅读(636) 评论(0) 推荐(0) 编辑
摘要: collections.namedtuple 是一个工厂函数,它可以用来构建一个带字段名的元组和一个有名字的类——这个带名字的类对调试程序有很大帮助。 用 namedtuple 构建的类的实例所消耗的内存跟元组是一样的,因为字段名都被存在对应的类里面。这个实例跟普通的对象实例比起来也要小一些,因为 阅读全文
posted @ 2019-09-23 15:48 顽强的allin 阅读(346) 评论(0) 推荐(0) 编辑
摘要: 容器序列 list、tuple 和 collections.deque 这些序列能存放不同类型的数据。 扁平序列 str、bytes、bytearray、memoryview 和 array.array,这类序列只能容纳一种类型。 容器序列存放的是它们所包含的任意类型的对象的引用,而扁平序列里存放的 阅读全文
posted @ 2019-09-23 14:59 顽强的allin 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 生成器表达式:(ord(symbol) for symbol in symbols) 列表推导式:[ord(symbol) for symbol in symbols] 这是因为生成器表达式背后遵守了迭代器协议,可以逐个地产出元素,而不是先建立一个完整的列表,然后再把这个列表传递到某个构造函数里。前 阅读全文
posted @ 2019-09-23 14:53 顽强的allin 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 首先介绍下filter和map: filter: filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。 该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列 阅读全文
posted @ 2019-09-23 11:42 顽强的allin 阅读(540) 评论(0) 推荐(0) 编辑
摘要: python2中: 此时x打印为:'C' python3中: 此时x打印为:'my love' 在 Python 3 中都有了自己的局部作用域,就像函数似的。表达式内部的变量和赋值只在局部起作用,表达式的上下文里的同名变量还可以被正常引用,局部变量并不会影响到它们。 在python3中: x = ' 阅读全文
posted @ 2019-09-23 11:20 顽强的allin 阅读(349) 评论(0) 推荐(0) 编辑