一篇文章带你入门python之推导式
作者:二十四桥_ 发布时间:2022-02-05 08:29:35
标签:python,推导式,入门
一、dict推导式
list1 = ['name', 'age', 'gender']
list2 = ['zmz', '20', 'boy']
# 字典推导式 -- 快速合并列表为字典,或提取字典中的目标数据
# 例 1 -- key是数字,value是这个数字的平方
dict1 = {i: i ** 2 for i in range(1, 5)}
print(dict1)
# 例 2 -- 合并两个列表,两个列表长度相同
dict2 = {list1[i]: list2[i]for i in range(len(list1))}
print(dict2)
# 如果两个列表长度不同,那么取 len(长度较短的列表)
# 例 3 -- 提取字典中满足条件的数据
dict3 = {'Mac': 10000, 'Dell': 6599, 'HP': 6999, 'Lenovo': 5799, 'Acer': 4599}
print(dict3.items())
counts = {key: value for key, value in dict3.items() if value > 6000}
print(counts)
二、list推导式
"""
推导式(生成式) -- 是用来化简代码
推导式包含:
1.列表推导式
2.字典推导式
3.集合推导式
"""
# 用一个表达式创建一个有规律的列表或控制一个有规律的列表
list1 = []
# while实现
i = 0
while i < 10:
list1.append(i)
i += 1
print(list1)
# for 实现
list2 = []
for i in range(10, 20, 1):
list2.append(i)
print(list2)
# 推导式实现
list3 = [i for i in range(-9, 2, 1)] # for 的左侧的 i 是返回值,创建列表当然用 []
print(list3)
print(sum([2 ** i for i in range(100)]))
三、set推导式
# 集合推导式 -- 主要用来根据列表创建集合
list1 = [2, 3, 4, 2, 5, 3]
set1 = {i ** 2 for i in list1}
print(set1)
t1 = (10, 20, 30, 40, 50)
print(t1)
t2 = (i * 2 for i in t1)
print(t2) # 打印不出来
四、含if推导式
"""
创建0 - 10 的偶数列表
"""
# 方法一
list1 = [i for i in range(0, 11, 2)]
print(list1)
# 方法二
list2 = []
for i in range(11):
if i % 2 == 0:
list2.append(i)
print(list2)
# 方法三
list3 = [i for i in range(11) if i % 2 == 0] # 列表推导式其实就是根据for 循环化简得来的
print(list3)
五、含for推导式
list = []
for i in range(1, 3):
for j in range(3):
list.append((i, j))
print(list)
print("==================")
list1 = [(i, j) for i in range(5) for j in range(5)] # for循环嵌套
count = 0
for i in list1:
count += 1
print(i, end='')
if count % 5 == 0:
print()
来源:https://blog.csdn.net/Zzzzzz_m/article/details/122785851


猜你喜欢
- 今天在日常维护一个网站时,发现该网站的留言程序没有经过严格的验证过滤,导致了将近十万条垃圾数据。而其中又不乏重要信息,需要清理数据,以及增加
- 简单试用了一下IE8后,今天相对有时间点,对IE8、IE7、IE6、Firefox2.0.0.12做了简单的一些CSS HACK测
- CSS布局中可以用javascript判断浏览器版本看如下的javascript脚本: if (window.XMLHt
- 数学是优美的. 听上去有点奇怪? 当我第一次开始设计的时候,我确信如此。数学如此刻板乏味。你可能会惊讶的发现,最美观的设计,艺术作品,物体,
- 通过变量ID得到变量的值已知获得变量的id用函数id(),那么它的反函数是什么?答案是:PyObj_FromPtr,据此,写了一个函数di(
- 需求和思路在一般的小项目或者一个小软件,例如客户端之类的小程序中,可能会需要数据的持久化.但是使用一般的数据库(Mysql)之类的不合适.使
- 分割成一个包含两个元素列表的列对于一个已知分隔符的简单分割(例如,用破折号分割或用空格分割).str.split() 方法就足够了 。 它在
- 自定义组件挂载原型上以elementUI二次分装dialog举例PageDialog.vue<!-- 页面提示弹框 --><
- Mysql InnoDB引擎页目录一、页目录和槽接上一篇,现在知道记录在页中按照主键大小顺序串成了单链表。那么我使用主键查询的时候,最顺其自
- Mysql参数优化对于新手来讲,是比较难懂的东西,其实这个参数优化,是个很复杂的东西,对于不同的网站,及其在线量,访问量,帖子数量,网络情况
- 最近有Win10系统用户反映,由于自己的电脑安装有两个python软件,所以想要卸载掉其中一个,不过在卸载的时候却发现无法卸载,并且出现提示
- 下面看下字符串List按照长度排序(python)的实现方法myList = ['青海省','内蒙古自治区'
- 如果你想让你的IIS支持wml,做个wap网站,只需作小小的改变就行了.虽然目前支持wml的虚拟主机极少,但是自己在本机上玩玩也好的.首先在
- QQ通过返回不同的图片,来表示在线或离线,图标也随之变换,既然图片不同,那么,返回的HTTP头信息中的Content-Length 也一定不
- execjs 使用有了selenium+Chrome Headless 加载页面为什么还要用execjs来运行js?selenium+Chr
- 执行效果如下:from tkinter import *import urllib.requestimport gzipimport jso
- 程序设计中三种基本机构是顺序结构、选择结构和循环结构。顺序结构语句是程序中最基础的语句,赋值语句、输入/输出语句、模块导入语句等都是顺序结构
- virtualenv创建一个拥有自己安装目录的环境, 这个环境不与其他虚拟环境共享库, 能够方便的管理python版本和管理python库。
- 1、基本用法# coding:utf-8import tkinter as tk# 创建窗口对象window = tk.Tk()# 设置串口
- 这篇文章主要介绍了Python接口自动化判断元素原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的