1.把列表解析的[]换成()得到的就是生成器表达式 2.列表解析与生成器表达式都是一种便利的编程方式,只不过生成器表达式更节省内存 3.Python不但使用迭代器协议,让for循环变得更加通用。大部分内置函数,也是使用迭代器协议访问对象的。例如, sum函数是Python的内置函数,该函数使用迭代器 ...
分类:
编程语言 时间:
2018-02-08 00:34:44
阅读次数:
200
1、列表推导式 公式:[ 变量(加工后的变量) for 变量i in 可迭代的数据类型 ] #例一:求10以内所有的整数(不包括0) list1 = [i for i in range(1,11)] print(list1) #输出结果 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] ...
分类:
其他好文 时间:
2018-02-07 19:42:13
阅读次数:
120
一:列表推导式 表现形式:[变量(加工后的数据) for 变量i in 可迭代的数据类型] 例一:30以内所有能被3整除的数 例二:30以内所有能被3整除的数的平方 例三:找到嵌套列表中名字含有两个‘e’的所有名字 ps:把列表解析的[]换成()得到的就是生成器表达式,其中,列表推导式比较直观,占内 ...
分类:
编程语言 时间:
2018-02-07 19:30:06
阅读次数:
226
一。生成器 生成器三种方式: 1)生成器函数 2)数据转化 3)用生成器表达式 列表推导式与生成器表达式比较: 列表推导式,生成器表达式1)列表推导式比较直观,占内存2)生成器表达式不容易看出内容,省内存.[ 变量(加工后的数据) for 变量i in 可迭代的数据类型 ] 列表的推导式, 循环模式 ...
分类:
编程语言 时间:
2018-02-07 19:28:23
阅读次数:
193
一、生成器概念 生成器不会把结果保存到一个系列中,而是保存生成器状态,在每次迭代的时候返回一个值,直到遇到StopIteration异常结束。并且生成器实现了迭代器协议,所以生成器就是可迭代对象。所以生成器的本身就是迭代器。 实现生成器的方式: 1.可以使用生成器函数 2.可以使用各种推导式构建迭代 ...
分类:
其他好文 时间:
2018-02-06 20:29:37
阅读次数:
100
1、三元表达式: value= true-expr if condition else false-expr 例如:a='positive' if 3>0 else 'negative' 2、用列表推导式来取代map和filter 3、函数式编程 能接收其他函数作为参数的函数,被称为高阶函数(hig ...
分类:
编程语言 时间:
2018-01-29 15:45:40
阅读次数:
233
可变的数据类型:list, dict, set (可修改其中的元素) 不可变的数据类型:str, tuple 重点:str, list, dict 列表推导式习题: 递归的使用:(经典的猴子吃桃算法) 没理解递归的话,看下面这个方案: ...
分类:
编程语言 时间:
2018-01-27 15:20:50
阅读次数:
211
0、少用全局变量:1、不安全,2、会一直占着内存不放 1、函数有多个返回值的时候,会把返回值放到元组 2、列表推导式 num=[1,2,3,4,5,6] #int类型 new=[] for i in num:#循环num 取每个值,放到新的list中 3、一个函数尽量实现一个功能 模块time 4、 ...
分类:
其他好文 时间:
2018-01-20 16:22:05
阅读次数:
182
# 函数如果有多个return值,那么会把这几个return值放到一个元组里面返回 # def hello(a, b, c, d):# return a, b, c, d## res = hello('abc', 'ert', 'qwe', 'lkj')# print(res) # 列表推导式num ...
分类:
编程语言 时间:
2018-01-19 16:45:34
阅读次数:
141
用列表推导式变成一行: 列表解析: 列表解析最终生成的是一个真实存数据的列表。 2,生成器表达式: next一次执行一次。 ...
分类:
其他好文 时间:
2018-01-19 15:49:40
阅读次数:
127