Python --- 推导式

目录

前言:

1.列表推导式

2.字典推导式

3.集合推导式


前言:

Python 中有一种特有的语法,就是 推导式 (又称为解析式)。推导式是可以从一个数据序列构
建另一个新的数据序列的结构体。
1.列表推导式
2.字典推导式
3.集合推导式

1.列表推导式

语法1:
[添加到新列表的变量 for 变量 in 序列]
eg:
print([i/2 for i in range(1, 21)])

# 输出:[0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 5.5, 6.0, 6.5, 7.0, 7.5, 8.0, 8.5, 9.0, 9.5, 10.0]
语法2:
[满足条件的添加到新列表的变量 for 变量 in 序列 if 条件]
eg:
li = [6, 2, 6, 7, -15, 8, -17, -10, -15, -4]
print([i**2 for i in li if i < 0])

输出:[225, 289, 100, 225, 16]
语法3:
[(变量1,变量2) for 变量1 in 序列1 for 变量2 in 序列2]
eg:
print([f'{i}{j}' for i in "123" for j in "abc"])

输出:['1a', '1b', '1c', '2a', '2b', '2c', '3a', '3b', '3c']

2.字典推导式

语法:
{键:值 for 元素 in 序列}
li = ["name", "age", "gender"]
print({i: i.upper() for i in li})

输出:{'name': 'NAME', 'age': 'AGE', 'gender': 'GENDER'}
语法:
{键:值 for 元素 in 序列 if 条件}
stu = {"牛牛": 98, "张三": 40, "老王": 50, "小红": 88, "小明": 79}
print({k: v for k, v in stu.items() if v < 60})

输出:{'张三': 40, '老王': 50}

3.集合推导式

语法:
{元素 for 元素 in 序列 if 条件}
import random
print({random.randint(1, 100) for i in range(10)})

输出:{64, 71, 9, 44, 15, 55, 59, 94}
                                       random
import random
# 随机生成 1-100 之间的整数
print(random.randint(1, 100))  # 双闭合区间
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我和程序有一个能跑就行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值