34-字典推导式

### 二、字典推导式

---

思考:如果有如下两个列表:

````python
list1 = ['name','age','gender']
list2 = ['Tom',20,'man']
````

如何快速合并为一个字典?

答:字典推导式

字典推导式作用:快速合并为列表为字典或提取字典中目标数据。

### 2.1快速体验

---

1.创建一个字典:字典key是1-5数字,value是这个数字的二次方。

```python
# 创建字典 key是1-5的数字,v是这个数字的平方
dict1 = {}
for i in range(1,5):
    dict1[i] = i**2

print(dict1)


dict1 = {i: i**2 for i in range(1,5)}
print(dict1)
```

2.将两个列表合并为一个字典

```python
list1 = ['name','age','gender']
list2 = ['Tom',20,'man']

# dict1 = {}
#
# for i in range(len(list1)):
#     dict1[list1[i]] = list2[i]
#
# print(dict1)

dict1 = {list1[i]: list2[i] for i in range(len(list1))}
print(dict1)
```

3.提取字典中的目标数据

```python
counts = {'MBP':268,'HP':125,'DELL':201,'Lenovo':199,'acer':99}

# 需求:提取上述电脑数量大于等于200的字典数据

# counts1 = {}
#
# for key,value in counts.items():
#     if value >= 200:
#         counts1[key] = value
#
# print(counts1)


counts1 = {key: value for key,value in counts.items() if value >= 200}
print(counts1)
# {'MBP': 268, 'DELL': 201}
```
 

  • 8
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
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、付费专栏及课程。

余额充值