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 相关文章推荐
pyv8学习python和javascript变量进行交互
Dec 04 Python
python单线程实现多个定时器示例
Mar 30 Python
python使用Berkeley DB数据库实例
Sep 26 Python
python BeautifulSoup设置页面编码的方法
Apr 03 Python
python实现识别相似图片小结
Feb 22 Python
python中map()与zip()操作方法
Feb 27 Python
使用paramiko远程执行命令、下发文件的实例
Oct 01 Python
python实现Floyd算法
Jan 03 Python
pandas 两列时间相减换算为秒的方法
Apr 20 Python
Python装饰器用法实例总结
May 26 Python
Python实现求解一元二次方程的方法示例
Jun 20 Python
使用python打印十行杨辉三角过程详解
Jul 10 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 随机记录mysql rand()造成CPU 100%的解决办法
2010/05/18 PHP
整理php防注入和XSS攻击通用过滤
2015/09/13 PHP
PHP使用mongoclient简单操作mongodb数据库示例
2019/02/08 PHP
validator验证控件使用代码
2010/11/23 Javascript
js对象的比较
2011/02/26 Javascript
读jQuery之三(构建选择器)
2011/06/11 Javascript
javascript 文件的同步加载与异步加载实现原理
2012/12/13 Javascript
js过滤特殊字符输入适合输入、粘贴、拖拽多种情况
2014/03/22 Javascript
confirm的用法示例用于按钮操作时确定是否执行
2014/06/19 Javascript
jQuery .tmpl() 用法示例介绍
2014/08/21 Javascript
jquery取子节点及当前节点属性值的方法
2014/09/09 Javascript
js表格排序实例分析(支持int,float,date,string四种数据类型)
2015/05/06 Javascript
AngularJS基础 ng-include 指令示例讲解
2016/08/01 Javascript
ionic实现带字的toggle滑动组件
2016/08/27 Javascript
浅谈JS使用[ ]来访问对象属性
2016/09/21 Javascript
JavaScript中cookie工具函数封装的示例代码
2016/10/11 Javascript
JS实现二叉查找树的建立以及一些遍历方法实现
2017/04/17 Javascript
微信小程序开发animation心跳动画效果
2017/08/16 Javascript
jQuery实现根据身份证号获取生日、年龄、性别等信息的方法
2019/01/09 jQuery
Vue路由权限控制解析
2020/11/09 Javascript
跟老齐学Python之Python文档
2014/10/10 Python
python获取文件后缀名及批量更新目录下文件后缀名的方法
2014/11/11 Python
Python中matplotlib中文乱码解决办法
2017/05/12 Python
Python使用numpy产生正态分布随机数的向量或矩阵操作示例
2018/08/22 Python
Django 响应数据response的返回源码详解
2019/08/06 Python
django框架F&Q 聚合与分组操作示例
2019/12/12 Python
Python变量作用域LEGB用法解析
2020/02/04 Python
Python 实现一行输入多个数字(用空格隔开)
2020/04/29 Python
Python中zipfile压缩文件模块的基本使用教程
2020/06/14 Python
css3中transition属性详解
2014/09/02 HTML / CSS
美国卡车、吉普车和SUV零件网站:4 Wheel Parts
2016/11/24 全球购物
Beach Bunny Swimwear官网:设计师泳装和性感比基尼
2019/03/13 全球购物
工商管理本科毕业生求职信范文
2013/10/05 职场文书
朋友聚会开场白
2015/06/01 职场文书
基于Apache Hudi在Google云构建数据湖平台的思路详解
2022/04/07 Servers
Elasticsearch 配置详解
2022/04/19 Java/Android