列表推导式 python原理_python之列表推导式
1. 定义
用一行构建代码
例题
# 构建一个1-100的列表
l1 = [i for i in range(1,101)]
print(l1)
# 输出结果
[1,2,3,4,5,6,...100]
2. 两种构建方式
2.1 循环模式: [变量(加工后的变量) for 变量 in iterable]
例题
1. 将10以内所有整数写入列表
print([i for i in range(1,11)])
# 输出结果
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
2. 将10以内所有整数的平方写入列表。
print([i**2 for i in range(1, 11)])
3. 100以内所有的偶数写入列表.
print([i for i in range(2, 101, 2)])
4. 从python1期到python100期写入列表list
print([f'python{i}期' for i in range(1, 101)])
练习题
l1 = [i*i for i in range(1,11)]
print(l1)
l2 = [i for i in range(1,101) if i % 2 == 0]
print(l2)
l3 = [f'python{i}期' for i in range(1,101)]
print(l3)
2.2 筛选模式: [变量(加工后的变量) for 变量 in iterable if 条件] 增加一个判断
例题
# 构建一个列表,要求元素大于4
print([i for i in range(11) if i > 4])
# 输出结果:
[5, 6, 7, 8, 9, 10]
练习题
1. 10以内大于4的数
# print([i for i in range(11) if i > 4])
print([i for i in range(1,31) if i % 3 == 0])
2. 30以内可以被三整除的数。
# 过滤掉长度小于3的字符串列表,并将剩下的转换成大写字母
l1 = ['太白金星', 'fdsaf', 'alex', 'sb', 'ab']
l2 = [i.upper() for i in l1 if len(i) > 3]
print(l2)
3. 找到嵌套列表中名字含有两个‘e’的所有名字(有难度)
names = [['Tom', 'Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Joe'],
['Alice', 'Jill', 'Ana', 'Wendy', 'Jennifer', 'Sherry', 'Eva']]
# 方法一: 普通方法
l4 = []
for i in names:
for j in i:
if j.count('e') >= 2:
l4.append(j)
print(l4)
# 方法二: 列表推导式方法
print([j for i in names for j in i if j.count('e') >= 2 ])
3. 列表推导式的优缺点
优点:
简单,快捷,装b
缺点:
可读性不高,不好排错
列表推导式 python原理_python之列表推导式相关推荐
- 列表推导式 python原理_Python进阶-列表推导式详解总结
列表推导式并不是什么特别的技术,它只是一种创建列表的简洁方法,目的是为了让大家写程序时更方便更快捷,写出更简洁的代码 初识列表 现在请创建一个list,元素为1到9的整数,先用普通方法做 lst = ...
- python列表根据值找索引_python实现列表中由数值查到索引的方法
python实现列表中由数值查到索引的方法 如下所示: 以上这篇python实现列表中由数值查到索引的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们. 时间: 201 ...
- python中列表和集合的区别_python中列表和集合有什么区别
列表list 字面意思就是一个集合,在Python中List中的元素用中括号[]来表示,可以这样定义一个List:L = [12, 'China', 19.998] 可以看到并不要求元素的类型都是一样 ...
- python元组 列表 字符串最后一个下标_python字符串列表元组序列操作
Table of Contents generated with DocToc python系列-字符串.列表.元组的操作 序列的访问及运算符 序列是为满足程序中复杂的数据表示,python支持组合数 ...
- 列表排序并返回索引_Python特性—列表,看完你就能轻松驾驭,拿走不谢
更新列表 元素赋值 可根据编号对列表中某个元素重新赋值: 而且可以赋不同类型的值: 增加元素 一旦初始化了一个列表就不能再往这个列表中增加元素了,若需要往列表中增加元素,则需要将整个列表中的元素复制一 ...
- python列表推导式生成随机数_Python:列表推导式/生成器推导式
一,列表推导式和生成器表达式 l = [i for i in range(10)] print(l) l1 = ['选项%s'%i for i in range(10)] print(l1) 1.把列 ...
- python列表数据写入txt文件_Python将列表数据写入文件(txt, csv,excel)
写入txt文件 def text_save(filename, data):#filename为写入CSV文件的路径,data为要写入数据列表. file = open(filename,'a') f ...
- python中列表是什么样的数据结构_Python中列表、字典、元组、集合数据结构整理...
Python常见数据结构整理 Python中常见的数据结构可以统称为容器(container).序列(如列表和元组).映射(如字典)以及集合(set)是三类主要的容器. 一.序列(列表.元组和字符串) ...
- python 遍历_python遍历列表
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python的列表list可以用for循环进行遍历,实际开发中发现一个问题,就是 ...
最新文章
- 【连载】【FPGA黑金开发板】NIOS II那些事儿--编程风格(三)
- Unity学习笔记2 简易2D横版RPG游戏制作(二)
- iOS自动化打包之重签名导出不同证书ipa探索
- linux端口映射_Linux 系统安全与优化配置
- php在线支付系统,Thinkphp各大支付平台在线支付集成源码
- selenium ruby和java_针对Ruby的Selenium WebDriver安装指南
- DevExpress GridControl使用方法
- 国二考试c语言考场能炒么,国2考试题_计算机国二office高级应用考试的题目是从题库20套里抽其中一套还是别的题目_淘题吧...
- 人脸检测-人脸对齐-人脸识别原理及方法
- veil-Evasion免杀使用
- Dell R730 xd “CPU 2 M23 VPP PG voltage is outside of range“故障
- python计算营业额代码_python计算营业额的代码_python 统计代码行数简单实例
- 史玉柱的团队管理之道
- 全球隔离,生出不少坏毛病
- 【山大会议】多人视频通话 WebRTC 工具类搭建
- Matlab批量转换dicom,基于Matlab的批量转换DICOM格式CT序列图像的实现
- 医学统计学计算机操作教程第3版pdf,医学统计学 八年制 第3版pdf,9787117205047
- Python推荐几个很不错的学习资源
- 卡罗拉 (COROLLA) - 灯光开关
- 哈夫曼编码(java版+详细代码)