![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
捕蛇者
种花匠
这个作者很懒,什么都没留下…
展开
-
python 迭代器与生成器
python 迭代器与生成器在之前的文章for 循环的本质中已经提及了迭代器协议。而生成器又是什么呢?和迭代器又有什么关系呢?本文将为你解惑。先看如下代码def g(): for i in range(3): yield ia = g()上文的代码中,a 就是一个生成器对象。该对象可以使用如下代码进行迭代for i in a: print(i)之前文章说过,使用for循环迭代的对象需要实现 __iter__ 方法,并且这个方法需要返回一个迭代器对象(该原创 2020-07-21 23:55:06 · 86 阅读 · 0 评论 -
python with关键字做了些啥?
python 上下文管理协议我们时常会使用如下的代码with open('1.txt') as f: print(f.readlines())我们被告知这样可以“安全”的打开一个文件。因为当代码执行超出 with 的作用域时文件会自动关闭。那这是怎么做到的呢。这就涉及到 python 上下文管理协议。一个对象的实现使用了一对专门方法。__enter__:该方法在进入上下文时被调用,要求返回一个对象,被 as 关键字后的变量所引用。__exit__:该方法在退出上下文时被调用, 一般原创 2020-07-06 17:02:29 · 192 阅读 · 0 评论 -
python中的for循环到底做了些啥
for循环的本质我们常常会写如下的代码a = [1,2,3]for item in a: print(item)for i in range(10): print(i)for i, item in enumerate(a): print(i, item)第一部分代码例子很好理解,循环遍历列表 a 里面的元素。 python 的 for … in … 语义非常清晰。第二部分代码例子和第一部分比较起来,似乎 range(10) 和列表等价。第三部分代码例子和第一部原创 2020-07-03 19:17:25 · 283 阅读 · 0 评论 -
3分钟入门 python (二)
3分钟入门 python (二)继上文,相信大家都已经能写基本的 python 程序了。还有两个基本的概念希望大家能了解,之后我会分享更高阶点的 python 内容了。上文答案:print(1900 // 400 * 400 == 1900) # 只用上文提及的内容print(1900 % 400 == 0) # 使用取余操作符直观感受程序: # 判断是否闰年 def leap_year(year): if year % 4: print原创 2020-07-02 17:45:44 · 105 阅读 · 0 评论 -
3分钟入门 python
3分钟入门 python直观感受一段 python 代码。 # 在电脑上打印 1 至 9 # print 可以在屏幕上显示内容 i = 0 while i < 10: print(i) i = i + 11.常用数据类型布尔型 (bool): True, False 就这俩字符串 (str) 如: “hello world”整型 (int) 如:10浮点型(float) 如:10.1列表 (list) 如: [1, 2原创 2020-07-02 15:15:31 · 156 阅读 · 0 评论