字典推导式

推导式

结构1:

整体变换

[表达式 For 变量 in 序列]

结构2:

部分变换(根据条件是否满足分别变换)
【表达式1 if 条件语句 else 表达式2 for 变量 in 序列】

结构3 :

筛选(删除)
[表达式 for 变量 in 序列 if 条件语句]

元组tuple: 容器;(元素1,元素2,…)
()
(元素,)
元素1,元素2,元素3
元组是不可变的列表,有序

字典(dict)

容器;{键1:值1,键2:值2,。。。。};可变的,但无序
键:不可变的数据;唯一
值:任何数据都可以作为字典的值

查单个:
字典[键]
字典.get(键),字典.get(键,默认值)
遍历
for 键 in 字典:
循环体

  1. 增和改

字典[键]=值 :当键存在的时候是修改键对的值;当键不存在的时候是添加键值对
字典.setdefault(键,值) :添加键值对
“”"

cat = {
   'name':'美美','age':2,'color':'白色'}
print(cat)
添加
cat ['breed'] = '蓝猫'#没有的时候他会修改
print(cat)
添加
cat.setdefault('weight',8) #没有的时候他不修改
print(cat)

cat.setdefault('weight',4 )
print(cat)
修改
cat['age'] = 3
print(cat)

练习:在students中没有分数的学生中添加分数对应的键值对,分数值为零

students = [
    {
   'name': 'stu1', 'tel': '1234', 'score': 89},
    {
   'name': 'stu2', 'tel': '465', 'score': 80},
    {
   'name': 'stu3', 'tel': '678'},
    {
   'name': 'stu3', 'score': 78},
    {
   'name': 'stu4', 'tel': '234'}
]

for stu in students:
    stu.setdefault('score',0)
    print(stu)

"""
  1. 删 :

    删除键值对
    del 字典[键] : 删除字典中指定键对应的键值对(如果键不存在会报错)
    字典 . pop(键) : 取出字典中指定键对应的键值对

2. print(cat) #{'name': '美美', 'age': 3, 'color': '白色', 'breed': '蓝猫', 'weight': 8}

del cat['color'] #{'name': '美美', 'age': 3, 'breed': '蓝猫', 'weight': 8}
print(cat)

cat .pop('breed')
print(cat)  #{'name': '美美', 'age': 3, 'weight': 8}

1. 相关操作

字典不支持 + ,*,也不支持比较大小的运算,只支持 == ,!=

支持 in 和 not in : 字典的in 和 not in 判断的是键是否存在

键 in 字典

键 not in 字典

dict1 = {
   'a':10,'b':20,'c':30}
print(10 in dict1) #False
print
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值