列表/字典推导式


列表推导式基本语法:[结果 for循环 if条件] 其中if条件不是必须的,如果有if,则if成功才把“结果”放进循环

l=[]
for i in range(1,11):
    l.append(i)
print(l)

# 列表推导式基本语法:[结果 for循环 if条件] 其中if条件不是必须的,如果有if,则if成功才把“结果”放进循环
# 可变成下面这样
l2 = [i for i in range(1,11)]
print(l2)  # 输出:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# 把1-10中,所有奇数的添加到列表
l3 = [i for i in range(11) if i % 2 ==1 ]  # 条件为真才执行结果1
print(l3)  # 输出:[1, 3, 5, 7, 9]

# 把1-10中,所有奇数的平方加到列表
l4 = [i**2 for i in range(11) if i %2 ==1]
print(l4)  # 输出:[1, 9, 25, 49, 81]

# python x 1 ~ python x 255
l5 = [f'python x {i}' for i in range(1,256)]
print(l5)  # ['python x 1',......... 'python x 255']

字典推导式

# 字典推导式{}
l6 =['迪迦','戴拿','盖亚']
d = {i:l6[i] for i in range(len(l6))}
print(d)  # {0: '迪迦', 1: '戴拿', 2: '盖亚'}

集合推导式

# 集合推导式→会去重
l7 = ['迪迦','迪迦','戴拿','盖亚']
s = {i for i in l7}
print(s)  # {'迪迦', '戴拿', '盖亚'}

还有:元组没有推导式,元组是不可变的

Python字典推导是一种快速创建字典的方法,它非常简洁和高效。通过字典推导,我们可以使用一个简洁的语法来创建一个字典,并且可以根据需要对字典中的键值对进行筛选或转换。 字典推导的语法形为: ```python {key_expression: value_expression for item in iterable if condition} ``` 其中,`key_expression`是用于生成字典键的表达,`value_expression`是用于生成字典值的表达,`item`是可迭代对象中的每个元素,`if condition`是可选的条件语句,用于筛选元素。 举个例子,假设我们有一个列表`numbers`,我们想要创建一个字典字典的键是列表中的元素,字典的值是每个元素的平方。我们可以使用字典推导来实现这个需求: ```python numbers = [1, 2, 3, 4, 5] squared_dict = {x: x**2 for x in numbers} ``` 这样,我们就得到了一个键为1到5的字典,对应的值分别为1到25的平方。 字典推导还可以通过添加条件语句来筛选元素。例如,我们想要筛选出列表中大于2的元素,并将它们作为字典的键,对应的值为元素的平方。我们可以这样做: ```python numbers = [1, 2, 3, 4, 5] squared_dict = {x: x**2 for x in numbers if x > 2} ``` 这样,我们得到的字典将只包含大于2的元素。 总结来说,Python字典推导是一种简洁而强大的方来创建和筛选字典。使用字典推导可以让我们的代码更加优雅和高效。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值