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打造出适合自己的定制化Eclipse IDE
Mar 02 Python
通过Python爬虫代理IP快速增加博客阅读量
Dec 14 Python
利用python求解物理学中的双弹簧质能系统详解
Sep 29 Python
CentOS下Python3的安装及创建虚拟环境的方法
Nov 28 Python
Python使用dict.fromkeys()快速生成一个字典示例
Apr 24 Python
django rest framework vue 实现用户登录详解
Jul 29 Python
Python之Numpy的超实用基础详细教程
Oct 23 Python
python 导入数据及作图的实现
Dec 03 Python
Python开发之pip安装及使用方法详解
Feb 21 Python
Python列表删除重复元素与图像相似度判断及删除实例代码
May 07 Python
详解OpenCV获取高动态范围(HDR)成像
Apr 29 Python
在python中读取和写入CSV文件详情
Jun 28 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利用COM对象访问SQLServer、Access
2006/10/09 PHP
MySQL修改密码方法总结
2008/03/25 PHP
phpmyadmin 访问被拒绝的真实原因
2009/06/15 PHP
基于PHP制作验证码
2016/10/12 PHP
TP3.2.3框架使用CKeditor编辑器在页面中上传图片的方法分析
2019/12/31 PHP
ECMAScript 基础知识
2007/06/29 Javascript
Jquery 1.42 checkbox 全选和反选代码
2010/03/27 Javascript
div+css布局的图片连续滚动js实现代码
2010/05/04 Javascript
jquery 表格的增行删行实现思路
2013/03/21 Javascript
jquery动态添加删除div 具体实现
2013/07/20 Javascript
AngularJS基础学习笔记之控制器
2015/05/10 Javascript
AngularJS教程之简单应用程序示例
2016/08/16 Javascript
简单实现js点击展开二级菜单功能
2017/05/16 Javascript
webpack vue 项目打包生成的文件,资源文件报404问题的修复方法(总结篇)
2018/01/09 Javascript
在vue中使用css modules替代scroped的方法
2018/03/10 Javascript
详解webpack打包nodejs项目(前端代码)
2018/09/19 NodeJs
vue获取验证码倒计时组件
2019/08/26 Javascript
微信小程序实现星星评分效果
2020/11/01 Javascript
[05:43]VG.R战队教练Mikasa专访:为目标从未停止战斗
2016/08/02 DOTA
在Python中操作文件之seek()方法的使用教程
2015/05/24 Python
浅析Python基础-流程控制
2016/03/18 Python
不要用强制方法杀掉python线程
2017/02/26 Python
matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)
2019/08/06 Python
python 控制Asterisk AMI接口外呼电话的例子
2019/08/08 Python
python生成器用法实例详解
2019/11/22 Python
浅谈python 中的 type(), dtype(), astype()的区别
2020/04/09 Python
python3.7 openpyxl 在excel单元格中写入数据实例
2020/09/01 Python
浅析HTML5中的 History 模式
2017/06/22 HTML / CSS
static全局变量与普通的全局变量有什么区别
2014/05/27 面试题
遥感技术与仪器求职信
2014/02/22 职场文书
补充协议书范本
2014/04/23 职场文书
养成教育经验材料
2014/05/26 职场文书
演讲比赛策划方案
2014/06/11 职场文书
销售经理岗位职责
2015/01/31 职场文书
2015年计算机教师工作总结
2015/07/22 职场文书
Vue全局事件总线你了解吗
2022/02/24 Vue.js