Python学习笔记之列表推导式实例分析


Posted in Python onAugust 13, 2019

本文实例讲述了Python学习笔记之列表推导式。分享给大家供大家参考,具体如下:

列表推导式

列表推导式可以快速简练地创建列表

之前的复杂写法:

capitalized_cities = []
for city in cities:
  capitalized_cities.append(city.title())

简化后的写法:

capitalized_cities = [city.title() for city in cities]

由此可见:借助列表推导式,我们可以使用 for 循环用一步创建一个列表。

列表推导式中的条件语句:

可以向列表推导式添加条件语句:

squares = [x**2 for x in range(9) if x % 2 == 0]

如果你要添加 else,则需要将条件语句移到列表推导式的开头,直接放在表达式后面, 如下:

squares = [x**2 if x % 2 == 0 else x + 3 for x in range(9)]

注意:列表推导式并没有在其他语言中出现,但是在 python 中很常见。

列表推导式[相关练习]

使用列表推导式创建新的列表 first_names,其中仅包含 names 中的名字(小写形式)。

names = ["Rick Sanchez", "Morty Smith", "Summer Smith", "Jerry Smith", "Beth Smith"]
first_names = [name.split(' ')[0].lower() for name in names]
print(first_names) # ['rick', 'morty', 'summer', 'jerry', 'beth']

使用列表推导式创建一个列表 multiples_3,其中包含 1-20 这20个整数的 3 的倍数。

multiples_3 = [3 * num for num in range(1, 21)]
print(multiples_3) # [3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60]

使用列表推导式创建一个 passed 的姓名列表,其中仅包含得分至少为 65 分的名字。

scores = {
      "Rick Sanchez": 70,
      "Morty Smith": 35,
      "Summer Smith": 82,
      "Jerry Smith": 23,
      "Beth Smith": 98
    }
passed = [name for name, score in scores.items() if score >= 65]
print(passed) # ['Rick Sanchez', 'Beth Smith', 'Summer Smith']

更多关于Python相关内容可查看本站专题:《Python列表(list)操作技巧总结》、《Python字符串操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python3+PyQt5实现使用剪贴板做复制与粘帖示例
Jan 24 Python
python利用rsa库做公钥解密的方法教程
Dec 10 Python
python中aioysql(异步操作MySQL)的方法
Apr 11 Python
详解python实现小波变换的一个简单例子
Jul 18 Python
Python sys模块常用方法解析
Feb 20 Python
python使用turtle库绘制奥运五环
Feb 24 Python
Python基础类继承重写实现原理解析
Apr 03 Python
tensorflow指定CPU与GPU运算的方法实现
Apr 21 Python
通过代码实例解析Pytest运行流程
Aug 20 Python
Python深度学习之实现卷积神经网络
Jun 05 Python
Python访问Redis的详细操作
Jun 26 Python
Python find()、rfind()方法及作用
Dec 24 Python
Django中create和save方法的不同
Aug 13 #Python
Python学习笔记之函数的定义和作用域实例详解
Aug 13 #Python
Python爬取智联招聘数据分析师岗位相关信息的方法
Aug 13 #Python
python基于json文件实现的gearman任务自动重启代码实例
Aug 13 #Python
Python 写入训练日志文件并控制台输出解析
Aug 13 #Python
基于MATLAB和Python实现MFCC特征参数提取
Aug 13 #Python
Python 使用 docopt 解析json参数文件过程讲解
Aug 13 #Python
You might like
用PHP实现递归循环每一个目录
2010/08/08 PHP
PHP语法自动检查的Vim插件
2014/08/11 PHP
原生js实现查找/添加/删除/指定元素的class
2013/04/12 Javascript
jquery左右滚动焦点图banner图片鼠标经过显示上下页按钮
2013/10/11 Javascript
关于Javascript 对象(object)的prototype
2014/05/09 Javascript
禁用Enter键表单自动提交实现代码
2014/05/22 Javascript
JS简单操作select和dropdownlist实例
2014/11/26 Javascript
JavaScript对表格或元素按文本,数字或日期排序的方法
2015/05/26 Javascript
JQuery核心函数是什么及使用方法介绍
2016/05/03 Javascript
jQuery Mobile动态刷新页面样式的实现方法
2016/05/28 Javascript
js 声明数组和向数组中添加对象变量的简单实例
2016/07/28 Javascript
详解vuex 中的 state 在组件中如何监听
2017/05/23 Javascript
从vue基础开始创建一个简单的增删改查的实例代码(推荐)
2018/02/11 Javascript
对vue.js中this.$emit的深入理解
2018/02/23 Javascript
JS数组求和的常用方法实例小结
2019/01/07 Javascript
浅谈React Native 传参的几种方式(小结)
2019/05/21 Javascript
javascript中contains是否包含功能实现代码(扩展字符、数组、dom)
2020/04/07 Javascript
JS实现页面侧边栏效果探究
2021/01/08 Javascript
k8s node节点重新加入master集群的实现
2021/02/22 Javascript
[01:20]PWL开团时刻DAY9——听说潮汐没用?
2020/11/10 DOTA
python中解析json格式文件的方法示例
2017/05/03 Python
浅谈Python NLP入门教程
2017/12/25 Python
Python实现PS滤镜特效Marble Filter玻璃条纹扭曲效果示例
2018/01/29 Python
django表单的Widgets使用详解
2019/07/22 Python
Python3 无重复字符的最长子串的实现
2019/10/08 Python
使用python接受tgam的脑波数据实例
2020/04/09 Python
keras和tensorflow使用fit_generator 批次训练操作
2020/07/03 Python
Python 按比例获取样本数据或执行任务的实现代码
2020/12/03 Python
银行实习生的自我评价
2013/12/09 职场文书
银行个人求职自荐信范文
2013/12/16 职场文书
医药类个人求职的自我评价
2014/02/12 职场文书
初中学校军训方案
2014/05/09 职场文书
个人四风问题对照检查材料
2014/09/26 职场文书
党的群众路线教育实践活动心得体会(乡镇)
2014/11/03 职场文书
教师理论学习心得体会
2016/01/21 职场文书
python代码实现备忘录案例讲解
2021/07/26 Python