python列表推导式生成随机数_Python:列表推导式/生成器推导式
一,列表推导式和生成器表达式
l = [i for i in range(10)]
print(l)
l1 = ['选项%s'%i for i in range(10)]
print(l1)
1.把列表解析的[]换成()得到的就是生成器表达式
2.列表解析与生成器表达式都是一种便利的编程方式,只不过生成器表达式更节省内存
3.Python不但使用迭代器协议,让for循环变得更加通用。大部分内置函数,也是使用迭代器协议访问对象的。例如, sum函数是Python的内置函数,该函数使用迭代器协议访问对象,而生成器实现了迭代器协议,所以,我们可以直接这样计算一系列值的和:
sum(x ** 2 for x in range(4))
列表推导式
例一:30以内所有能被3整除的数
multiples = [i for i in range(30) if i % 3 is0]print(multiples)#Output: [0, 3, 6, 9, 12, 15, 18, 21, 24, 27]
View Code
例二:30以内所有能被3整除的数的平方
defsquared(x):return x*x
multiples= [squared(i) for i in range(30) if i % 3 is0]print(multiples)
View Code
例三:找到嵌套列表中名字含有两个‘e’的所有名字
names = [['Tom', 'Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Joe'],
['Alice', 'Jill', 'Ana', 'Wendy', 'Jennifer', 'Sherry', 'Eva']]print([name for lst in names for name in lst if name.count('e') >= 2]) #注意遍历顺序,这是实现的关键
View Code
字典推导式
例一:将一个字典的key和value对调
mcase = {'a': 10, 'b': 34}
mcase_frequency= {mcase[k]: k for k inmcase}print(mcase_frequency)
View Code
例二:合并大小写对应的value值,将k统一成小写
mcase = {'a': 10, 'b': 34, 'A': 7, 'Z': 3}
mcase_frequency= {k.lower(): mcase.get(k.lower(), 0) + mcase.get(k.upper(), 0) for k inmcase.keys()}print(mcase_frequency)
View Code
集合推导式
例:计算列表中每个值的平方,自带去重功能
squared = {x**2 for x in [1, -1, 2]}print(squared)#Output: set([1, 4])
View Code
练习题:
例1: 过滤掉长度小于3的字符串列表,并将剩下的转换成大写字母
例2: 求(x,y)其中x是0-5之间的偶数,y是0-5之间的奇数组成的元祖列表
例3: 求M中3,6,9组成的列表M = [[1,2,3],[4,5,6],[7,8,9]]
python列表推导式生成随机数_Python:列表推导式/生成器推导式相关推荐
- python列表推导式生成随机数_python列表推导式
列表推导式介绍 列表推导式是Python中快速创建列表的一种方式. 之前我们要创建(Python3中)一个元素是0-9的列表,我们可能会像下面这么写: >>> list(range( ...
- python列表推导式生成随机数_python 【迭代器 生成器 列表推导式】
python [迭代器 生成器 列表推导式] 一.迭代器 1.迭代器 如何从列表.字典中取值的 index索引 ,key for循环 凡是可以使用for循环取值的都是可迭代的 可迭代协议 :内部含 ...
- Python中random模块生成随机数详解
Python中random模块生成随机数详解 本文给大家汇总了一下在Python中random模块中最常用的生成随机数的方法,有需要的小伙伴可以参考下 Python中的random模块用于生成随机数. ...
- python列表生成字典_Python 列表生成式 字典生成式
Python 列表生成式 & 字典生成式 通过生成式可以更加简洁地生成列表和字典 列表生成式 对比 直接生成数据后加入列表示例: user_list = list() for i in ran ...
- python随机数生成并排序_python_生成随机数与列表排序
1. 列表排序可采用两种方法 sorted(list) 直接改变list 调用list的方法 list.sort 2. random.randint(a,b) 生成大于等于a小于等于b的整数 ran ...
- python生成随机数列表并排序_python_生成随机数与列表排序
1. 列表排序可采用两种方法 sorted(list) 直接改变list 调用list的方法 list.sort 2. random.randint(a,b) 生成大于等于a小于等于b的整数 ran ...
- python列表元素零的移动_python列表多行
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 这个列表推导式共有145列: memberdef_list = and std: ...
- python列表使用技巧与方法_Python列表的相关操作与方法
Python列表的相关操作与方法 1.列表 why:int.bool.str存在缺陷 str:存储少量的数据:所有的操作获取的内容都是 str类型,存储的数据类型单一. what: 列表可以承载任意数 ...
- python如何生成随机数_python如何生成随机数
如果你对在Python生成随机数与random模块中最常用的几个函数的关系与不懂之处,下面的文章就是对Python生成随机数与random模块中最常用的几个函数的关系,希望你会有所收获,以下就是这篇文 ...
最新文章
- PHP Socket配置以及实例
- 如何知道我的电脑是多少位 ?
- 永洪Desktop交叉表怎么按月份汇总
- 转:WPF中图形表示语法详解(Path之Data属性语法)
- 【作业】条件、循环、函数定义、字符串操作练习
- android listview 滑动条显示_ListView详细介绍与使用
- Mojoportal 的用户系统
- 索纳塔进入wince系统_23项高级安全驾驶辅助系统环绕 第十代索纳塔新手女司机的福音...
- CMD中可执行的结束进程命令
- 公司年会要求搞一个抽奖程序,及时安排一波
- css 加粗或斜体hover鼠标划过,导致异常闪动,整体宽度增加的解决办法
- 如何录制计算机上的音乐,电脑上听歌曲,怎么把它录下来呢
- 电路中VCC等符号的含义零欧姆电阻作用
- 如何恢复被删短信_手机短信删除了怎么恢复?超级简单的两种方法
- OpenCV动作识别
- cpu占用突然到百分百又降下去_cpu使用率忽高忽低
- ue4 小知识点 图片变灰 hlsl 材质 custom shader
- 解决:word文档中插入照片有一部分不显示
- 【Android SDM660源码分析】- 02 - UEFI XBL QcomChargerApp充电流程代码分析
- 足球数据API接口 - 【球员资料】API调用示例代码