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 相关文章推荐
利用Python中的pandas库对cdn日志进行分析详解
Mar 07 Python
python实现rsa加密实例详解
Jul 19 Python
Python的多维空数组赋值方法
Apr 13 Python
python 日期操作类代码
May 05 Python
Python中反射和描述器总结
Sep 23 Python
Python爬虫beautifulsoup4常用的解析方法总结
Feb 25 Python
详解Python的三种可变参数
May 08 Python
Django 用户认证组件使用详解
Jul 23 Python
Windows下Sqlmap环境安装教程详解
Aug 04 Python
Django中使用Celery的方法步骤
Dec 07 Python
java关于string最常出现的面试题整理
Jan 18 Python
Python爬虫之自动爬取某车之家各车销售数据
Jun 02 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
如何删除多级目录
2006/10/09 PHP
Zend Framework开发入门经典教程
2016/03/23 PHP
yii2利用自带UploadedFile实现上传图片的示例
2017/02/16 PHP
PHP绕过open_basedir限制操作文件的方法
2018/06/10 PHP
网页前台通过js非法字符过滤代码(骂人的话等等)
2010/05/26 Javascript
jquery的Theme和Theme Switcher使用小结
2010/09/08 Javascript
Android中资源文件(非代码部分)的使用概览
2012/12/18 Javascript
图片动画横条广告带上下滚动可自定义图片、链接等等
2013/10/20 Javascript
js控制鼠标事件移动及移出效果显示
2014/10/19 Javascript
Nodejs学习笔记之Global Objects全局对象
2015/01/13 NodeJs
基于JavaScript实现TAB标签效果
2016/01/12 Javascript
分享我对JS插件开发的一些感想和心得
2016/02/04 Javascript
Vue.js第三天学习笔记(计算属性computed)
2016/12/01 Javascript
使用AngularJS 跨站请求如何解决jsonp请求问题
2017/01/16 Javascript
基于JavaScript实现多级菜单效果
2017/07/25 Javascript
jquery拖拽自动排序插件使用方法详解
2020/07/20 jQuery
vue项目中axios请求网络接口封装的示例代码
2018/12/18 Javascript
Vue项目中使用jsonp抓取跨域数据的方法
2019/11/10 Javascript
JavaScript 判断浏览器是否是IE
2021/02/19 Javascript
[03:59]DOTA2英雄梦之声_第07期_水晶室女
2014/06/23 DOTA
python正则表达式修复网站文章字体不统一的解决方法
2013/02/21 Python
pycharm 使用心得(七)一些实用功能介绍
2014/06/06 Python
Python使用Shelve保存对象方法总结
2019/01/28 Python
python try except返回异常的信息字符串代码实例
2019/08/15 Python
Python实现投影法分割图像示例(二)
2020/01/17 Python
sklearn和keras的数据切分与交叉验证的实例详解
2020/06/19 Python
CSS3制作皮卡丘动画壁纸的示例
2020/11/02 HTML / CSS
HTML5 Web 存储详解
2016/09/16 HTML / CSS
Boston Proper官网:美国女装品牌
2017/10/30 全球购物
丽笙酒店官方网站:Radisson Hotels
2019/05/07 全球购物
三万活动总结
2014/04/28 职场文书
四风问题查摆剖析材料
2014/10/11 职场文书
公司感恩节活动策划书
2014/10/11 职场文书
2015年酒店工作总结范文
2015/04/07 职场文书
2016大学军训心得体会
2016/01/11 职场文书
2016年学校禁毒宣传活动工作总结
2016/04/05 职场文书