python基础---推导式_NINOMIYA~~的博客-程序员宅基地

技术标签: 语言  人工智能  推导式  后端开发  基础  Python  

1.概念

推导式comprehensions(又称解析式),是Python的一种独有特性。

推导式是可以从一个数据序列构建另一个新的数据序列。比如说给定一个列表,可以由推导式生成一个新的列表。

2.列表推导式

(1)概念

列表推导式(list comprehension)是利用其它列表创建新列表的一种方式,

工作原理类似for循环,即可对得到的元素进行转换或者筛选。

(2)列表推导式的基本格式

变量名=[表达式 for 临时变量 in 列表]    或者  

变量名= [表达式 for 临时变量 in 列表 if 条件]

(3)执行流程

从列表中遍历每一个元素给临时变量,表达式使用临时变量做一些逻辑判断,最后将新的数据放到新的列表中。

(4)练习1

将lst中每一个元素进行平方后放入到一个新列表中

结果:

(5)练习2

求出lst 中是奇数的值,然后放入到一个新列表中

结果:

(6)练习3

求列表中所有大于2的偶数进行平方计算

结果:

(7)练习4

将一个嵌套列表转换成一个一维列表

结果:

(8)练习5

现在有一列表lst = [[1,2,3],[4,5,6],[7,8,9]],要求取出1/4/7  和 1/5/9 元素

结果:

结果:

3.字典推导式

(1)格式

变量名={表达式 for 临时变量 可迭代内容}

(2)练习

将字典中的key和value 进行对换

结果:

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。

如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同

4.集合推导式

(1)格式

变量名={表达式 for 临时变量 可迭代内容}

(2)练习

计算列表中每个值的平方,自带去重功能

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_44239385/article/details/86617911

智能推荐

markdown基础用法-程序员宅基地

这是一篇markdown基础语法介绍一、标题二、文字三、列表四、段落五、代码段六、分割线七、链接八、图片九、表格十、标题锚点一、标题# h1字体 2em/32px## h2字体 1.5em/24px### h3字体#### h4字体##### h5字体 0.83em/13px###### h6字体 0.67em/10px浏览器的不同,会有些微...

RSA加密/解密和签名/验签过程理解_rsa 解密 签名 顺序-程序员宅基地

这里将A理解为客户端,B理解为服务端,可以比较好理解.加解密过程简述A和B进行通信加密,B要先生成一对RSA密钥,B自己持有私钥,给A公钥 --->A使用B的公钥加密要发送的内容,然后B接收到密文后通过自己的私钥解密内容签名验签过程简述A给B发送消息,A先计算出消息的消息摘要,然后使用自己的私钥加密消息摘要,被加密的消息摘要就是签名.(A用自己的私钥给消息摘要加密成为签名)B..._rsa 解密 签名 顺序

【论文阅读】Probabilistic Embeddings for Cross-Modal Retrieval CVPR 2021 --- 跨模态检索,概率嵌入,一对多,多对多匹配_me_yundou的博客-程序员宅基地

CVPR 2021 论文 Probabilistic Embeddings for Cross-Modal Retrieval 阅读笔记。本博客非论文的逐字逐句翻译,乃博主阅读论文之后根据自己的理解所写,预知详情,请参阅论文原文。_概率嵌入

python正则表达式切割(re.split)_python 正则分割-程序员宅基地

split 方法按照能够匹配的子串将字符串分割后返回列表,它的使用形式如下:re.split(pattern, string[, maxsplit=0, flags=0])参数: 参数 描述 pattern 匹配的正则表达式 string 要匹配的字符串。 maxsplit 分隔次数,maxsplit=1 分隔一次,默认为 0,不限制次数。 _python 正则分割

ffmpeg在am335x上的移植-程序员宅基地

交叉编译工具:arm-linux-gcc一.先下载一下文件1. yasm-1.2.0.tar.gz2. x264-snapshot-20140424-2245.tar.bz23. xvidcore-1.1.3.tar.gz4. SDL-1.2.15.tar.gz5. ffmpeg-1.2.2.tar.gz链接如下1. yasm-1...._ffplay am335x

winforms和wpf_Microsoft开源WPF,WinForms和WinUI XAML-程序员宅基地

winforms和wpf Microsoft正在开源三个Windows UX框架,其中包括Windows Presentation Foundation(WPF) , Windows Forms和Windows UI XAML库(WinUI)。 这三个框架都将在GitHub上提供。 开发人员将能够为Microsoft的客户端UX技术做出贡献,并帮助调试和解决问题。 他们还可以构建UI堆栈的私..._winforms wpf winui

随便推点

第四章 智能合约 [20] -程序员宅基地

一、智能合约的起源彼特·托德(Peter Todd)是比特币核心开发者之一。他总结了智能合约(Smart contract)的现状[21] ,认为“智能合约讨论的结论是:没有人理解智能合约究竟是什么。如果我们要实施智能合约,应该需要预言机(oracles)”。确实,要想阐明智能合约的理念和本质并非易事。我们从智能合约理念的起源开始。“智能合约”概念由计算机科学家、加密大师尼克·萨博(Nic..._尼克萨博关于智能合约的工作理论

tomcat搭建图片服务器-程序员宅基地

1.安装tomcat后,修改Tomcat 7.0\conf\server.xml 找到Host标签加入如下内容: <Context path="/static" docBase="D:\xykpic" reloadable="false"></Context> 2.名词解释:path:resource是要访问的url根路径 ,比如localhost:8080...

aws s3 cp 下载断点续传-程序员宅基地

使用python脚本1.pipinstallawscli下载awscliawsconfigure配置aws需要aws的id和key配置aws2.pipinstallboto3aws的python接口3.pipinstall s3resumable这是github上实现断点续传的包,它会把下载的文件分为15m的包,当下载完成后,会合并成一个https://github.com/immfly/s3resumable例程import boto3fr...

计算2的N次方的思考_python计算2的n次方的算法-程序员宅基地

城堡问题(DFS)#include<iostream>#include<cstring>#include<cstdlib>#include<cstdio>#include<algorithm>using namespace std;int r, c;int color[60]_python计算2的n次方的算法

洛谷P1678-烦恼的高考志愿-程序员宅基地

题目背景 计算机竞赛小组的神牛V神终于结束了万恶的高考,然而作为班长的他还不能闲下来,班主任老t给了他一个艰巨的任务:帮同学找出最合理的大学填报方案。可是v神太忙了,身后还有一群小姑娘等着和他约会,于是他想到了同为计算机竞赛小组的你,请你帮他完成这个艰巨的任务。题目描述 根据n位学生的估分情况,分别给每位学生推荐一所学校,要求学校的预计分数线和学生的估分相差最小(可高可低,毕竟是估分嘛),...

定义一个有10个空间的整型数组,数组中的每个位置存放8-98之间的随机偶数, 输出这个数组中的每个数,再排序,排序后再输出。_dim minimumscale as integer-程序员宅基地

package com.xianxi;import java.util.Arrays;public class Test1_4 { /** * 定义一个有10个空间的整型数组,数组中的每个位置存放8-98之间的随机偶数, 输出这个数组中的每个数,再排序,排序后再输出。 */ public static void main(String[] args) { // TODO _dim minimumscale as integer