Python 列表推导式

在我们编写列表一些带有规律性的列表的时候,往往普通的方式会将代码拉长,浪费空间不说还不便于阅读

简单的一个例子

列表 list=[0,2,4,6,8] 为 0-9 中间所有的偶数(不能直接写出,需要通过程序计算)

普通版本

list = []
for i in range(10):
    if i%2 == 0:
        list.append(i)
print(list)

>>[0, 2, 4, 6, 8]

列表推导式版本

list = [i for i in range(10) if i%2 == 0]
print(list)

>>[0, 2, 4, 6, 8]

由此可见,列表推导式明显比较简单而且好读

以上述那个为例子不难看出推导式大概是由这三部分来确定的

  1. 确定循环变量,也就是列表中的元素
  2. 通过 for 循环将循环变量确定
  3. 在通过判断,使得通过判断的元素显示在列表中

字典推导式

毋庸置疑,在字典中也存在推导式

但是推导式只能对一个变量进行赋值,也就是说在一个方括号里面只能存在对一个变量名的遍历,而不能写两个

{表达式 for 迭代变量 in 可迭代对象 [if 条件表达式]}

a = ['a','b','c','d']
b = {i:i+"1" for i in a}
print(b)

总结

推导式是 python 中一个很高级的用法,也许用不到,但最好还是了解一下以便不时之需

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值