![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python3
小曙哥
这个作者很懒,什么都没留下…
展开
-
python学习笔记之Iterable和Iterator的区别
我们已经知道,可以直接作用于for循环的数据类型有以下几种:一类是集合数据类型,如list、tuple、dict、set、str等;另一类是generator,包括生成器和带yield的generator function。这些可以直接作用于for循环的对象统称为可迭代对象:Iterable。可以使用isinstance()判断一个对象是否是Iterable对象:>>> from collectio原创 2017-12-09 15:05:48 · 493 阅读 · 0 评论 -
python学习笔记之生成器
首先为什么要有生成器? 通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。 所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从而节省大量的空间。在原创 2017-12-09 19:11:15 · 151 阅读 · 0 评论 -
python学习笔记之yield使用浅析
您可能听说过,带有 yield 的函数在 Python 中被称之为 generator(生成器),何谓 generator ?我们先抛开 generator,以一个常见的编程题目来展示 yield 的概念。如何生成斐波那契数列(1,1,2,3,5,8,13………)斐波那契(Fibonacci)数列是一个非常简单的递归数列,除第一个和第二个数外,任意一个数都可由前两个数相加得到。用计算机程序输出斐波那原创 2017-12-09 23:01:13 · 201 阅读 · 0 评论 -
python学习笔记之zip的用法
基础知识: 使用zip()函数来可以把列表合并,并创建一个元组对的列表。python3.x版本中zip是一个可迭代对象,使用时必须将其放入list中全部显示>>> a=[1,2,3] >>> b=[4,5,6] >>> zip(a,b) <zip object at 0x000001E5FC78BC48> >>> list(zip(a,b)) [(1, 4), (2, 5), (3, 6)]zip原创 2017-12-16 11:56:30 · 202 阅读 · 0 评论