Python推导式简单示例【列表推导式、字典推导式与集合推导式】
作者:Duke_Nan 发布时间:2021-08-04 08:23:40
标签:Python,推导式
本文实例讲述了Python推导式。分享给大家供大家参考,具体如下:
1. 列表推导式
>>> li = [1,2,3,4,5,6]
# 求元素的平方
>>> li_a = [x**2 for x in li ]
>>> li_a
[1, 4, 9, 16, 25, 36]
# 提取偶数值
>>> li_b = [x for x in li if x%2==0]
>>> li_b
[2, 4, 6]
# 将多维数组转换成一维数组
>>> li_c = [[1,2], [3], [], [4,5,6]]
>>> li_d = [j for i in li_c for j in i ]
>>> li_d
[1, 2, 3, 4, 5, 6]
# 使用map
>>> li_1 = ['a', 'b', 'c', 'd']
>>> li_2 = [10, 20, 30, 40]
>>> li_e = list(map(lambda x, y:{x:y}, li_1, li_2))
>>> li_e
[{'a': 10}, {'b': 20}, {'c': 30}, {'d': 40}]
2. 字典推导式
# 解析列表
>>> li = ['a', 'b', 'c', 'd', 'e']
>>> li_1 = {k:v for k, v in enumerate(li)}
>>> li_1
{0: 'a', 1: 'b', 2: 'c', 3: 'd', 4: 'e'}
# 解析字典
>>> dict_a = {'a':10, 'b':20, 'c':30}
>>> dict_b = {v:k for k, v in dict_a.items()}
>>> dict_b
{10: 'a', 20: 'b', 30: 'c'}
3. 集合推导式
>>> set1 = {x for x in range(10)}
>>> set1
set([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
PS:上述代码在Python2.7与Python3.6环境下测试
希望本文所述对大家Python程序设计有所帮助。
来源:https://blog.csdn.net/baidu_32656897/article/details/82465861


猜你喜欢
- 给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。示例 1:输入: head = [4,5,1,
- 有如下实现方法: 在Firefox, Google Chrome, Safari, Opera中:可以用 window.getSelecti
- 如下所示:# -*-coding: utf-8 -*-import pandas as pd#读取csv文件df=pd.read_csv(&
- 本文实例讲述了Oracle删除死锁进程的方法。分享给大家供大家参考。具体如下:步骤1:用以下SQL查看进程列表,判断出被锁定的表SELECT
- 用Python随机生成学生姓名,三科成绩和班级数据,再插入到PostgreSQL中。模块用psycopg2 randomimport ran
- 摘要: 每到情人节、七夕节,不少小伙伴大伙伴们都会遇到这样一个世纪问题——怎么给女朋友/老婆一个与众不同的节日惊喜。今天给大家分享一个独特的
- 本文介绍urllib库在不同版本的Python中的变动,并以Python3.X讲解urllib库的相关用法。urllib库对照速查表Pyth
- MySQL服务器有几个影响其操作的参数(变量)。如果缺省的参数值不合适,可以将其修改为对服务器运行环境更合适的值。例如,如果您有大量的内存,
- 本文详细罗列并说明了Python的标准库与第三方库如下,供对此有需要的朋友进行参考:Tkinter———— Python默认的图形界面接口。
- jQuery源码里自己也有很多用到each方法。其实jQuery里的each方法是通过js里的call方法来实现的。下面简单介绍一下call
- Python是很好的爬虫工具不用再说了,它可以满足我们爬取网络内容的需求,那最简单的爬取网络上的图片,可以通过很简单的方法实现。只需导入正则
- WinForm 中添加 openFileDialog Button, WinForm .cs 中添加本地.mdf,如下:using Syst
- --sql基本操作--创建数据库create database Studets--创建表create table student ( sno
- 环境介绍python3.8numpymatplotlib第一步,绘制一个三维的爱心关于这一步,我采用的是大佬博客中的最后一种绘制方法。当然,
- 本代码主要实现的是利用网络传输图片,用在我的树莓派项目之上。该项目在PC上运行服务端,树莓派上运行客户端,两者连接到同一局域网中,修改代码中
- Switch简介Go的switch的基本功能和C、Java类似:switch 语句用于基于不同条件执行不同动作,每一个 case 分支都是唯
- 简介Blade 是 Laravel 所提供的一个简单且强大的模板引擎。相较于其它知名的 PHP 模板引擎,Blade 并不会限制你必须得在视
- 如下所示:# the basic ways = 0for x in range(10): s += x# the right ways =
- 首先要兼容IE\FF滴然后有一个环境与条件:必须是使用em单位布局。因为这个是利用字号做缩放效果,并且兼容fontSize各项单位,例如px
- 1.安装Oracle Client连接到Oracle的前提是在SQL Server服务器上安装Oracle Client。Oracle Cl