乐趣区

关于前端:一个-零差评的-Python-内置库

前言

最近事件不是很多,想写一些技术文章分享给大家,同时也对本人一段时间来碎片化承受的常识进行一下梳理,所谓写分明能力说分明,说分明能力想分明,就是这个情理了。

很多人都致力于把 Python 代码写得更 Pythonic,一来更符合规范且容易浏览,二来个别 Pythonic 的代码在执行上也更有效率。明天就先给大家介绍一下 Python 的零碎库 itertools。所以想学的同学,有必要听一下这位老师的课、支付 python 福利奥,想学的同学能够到梦雅老师的围鑫(同音):前排的是:762,两头一排是:459,后排的一组是:510 , 把以上三组字母依照程序组合起来即可,她会安顿学习的。

itertools 库

迭代器(生成器)在 Python 中是一种很罕用也很好用的数据结构,比起列表 (list) 来说,迭代器最大的劣势就是提早计算,按需应用,从而进步开发体验和运行效率,以至于在 Python 3 中 map,filter 等操作返回的不再是列表而是迭代器。

话虽这么说但大家平时用到的迭代器大略只有 range 了,而通过 iter 函数把列表对象转化为迭代器对象又有点多此一举,这时候咱们明天的配角 itertools 就该上场了。

应用 itertools

itertools 中的函数大多是返回各种迭代器对象,其中很多函数的作用咱们平时要写很多代码能力达到,而在运行效率上反而更低,毕竟人家是零碎库。所以想学的同学,有必要听一下这位老师的课、支付 python 福利奥,想学的同学能够到梦雅老师的围鑫(同音):前排的是:762,两头一排是:459,后排的一组是:510 , 把以上三组字母依照程序组合起来即可,她会安顿学习的。

itertools.accumulate

简略来说就是累加。

itertools.chain

连贯多个列表或者迭代器。

itertools.combinations

求列表或生成器中指定数目的元素不反复的所有组合

itertools.combinations_with_replacement

容许反复元素的组合

itertools.compress

依照真值表筛选元素

itertools.count

就是一个计数器, 能够指定起始地位和步长

itertools.cycle

循环指定的列表和迭代器

itertools.dropwhile

依照真值函数抛弃掉列表和迭代器后面的元素

itertools.filterfalse

保留对应真值为 False 的元素

itertools.groupby

依照分组函数的值对元素进行分组

itertools.islice

上文应用过的函数,对迭代器进行切片

itertools.permutations

产生指定数目的元素的所有排列(程序无关)

itertools.product

产生多个列表和迭代器的(积)

itertools.repeat

简略的生成一个领有指定数目元素的迭代器

itertools.starmap

相似 map

itertools.takewhile

与 dropwhile 相同,保留元素直至真值函数值为假。

itertools.tee

这个函数我也不是很懂,仿佛是生成指定数目的迭代器

itertools.zip_longest

相似于 zip,不过已较长的列表和迭代器的长度为准

大略就总结到这里,不过诚实说 Python 的各种语言个性和库还是要多用能力纯熟,最终达到顺手拈来的水平,装逼的说就是由术入道。所以想学的同学,有必要听一下这位老师的课、支付 python 福利奥,想学的同学能够到梦雅老师的围鑫(同音):前排的是:762,两头一排是:459,后排的一组是:510 , 把以上三组字母依照程序组合起来即可,她会安顿学习的。

退出移动版