python: 装饰器 / 迭代器 / 生成器

装饰器

写在 被装饰函数 的 正上方 。可提前注明接下来介绍内容,例如@property@classmethod@staticmethod

@关键字
被装饰函数() 

迭代器 (Iterator)

是一种 对象,它能够用来 遍历 容器中的元素,每个迭代器对象代表容器中的确定的地址。 可以被next()函数调用并不断返回下一个值的对象称为迭代器。

enumerate()

特点:

  • 迭代器与列表比较,迭代器是惰性计算,省内存
  • 不如 list索引 取值灵活,不可逆序。

生成器 (Generator)

包含 yield 的函数。

yield 与 return 相比,能 多次 返回 值


[1] Python学习之三大名器-装饰器、迭代器、生成器

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏伪君子的梦呓

leetcode 题解~两数之和 ~ C++做法

20450
来自专栏一直在跳坑然后爬坑

RxJava2操作符之“Scan”作用示例用法运行结果分析总结

扫描,遍历,用法和上一个Reduce操作符差不多,只是这个操作符会将每一个过程的中间产物发射出来,而不是只发射结果

10530
来自专栏ACM算法日常

字符串的距离(动态规划) - leetcode 72

,因为在刷leetcode的动态规划专题。动态规划虽然定义很简单,但是对于复杂的动态规划题目,很多时候还是很棘手的。

8920
来自专栏Petrichor的专栏

numpy: np.where

Note : 不接受 list 型的参数,只接受 `ndarray 型输入。

14830
来自专栏黑泽君的专栏

java基础学习_基础语法(下)02_day06总结

============================================================================= ==...

7010
来自专栏武培轩的专栏

排序算法-希尔排序

上一篇讲解了简单插入排序算法,以及在其基础上优化的二分插入排序算法,但是每次插入需要按间隔为 1 移动有序区的元素,效率不高,下面我们来介绍一种新的插入排序算法...

36240
来自专栏Aloys的开发之路

华为面试题——一道关于指针方面的编程题(C/C++)

    int A[nSize],其中隐藏着若干0,其余非0整数,写一个函数int Func(int* A, int nSize),使A把0移至后面,非0整数...

32980
来自专栏小樱的经验随笔

HDU 1024 Max Sum Plus Plus【动态规划求最大M子段和详解 】

Max Sum Plus Plus Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/...

55840
来自专栏前端儿

ASCII码排序

输入第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。输出对于每组输入数据,输出一行,字符中间...

19820
来自专栏小小挖掘机

Numpy基础知识点汇总

1、概述 Numpy是高性能科学计算和数据分析的基础包,它的部分功能如下: 1)ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。 ...

32940

扫码关注云+社区

领取腾讯云代金券