字典的增、删、改、查

1.一个简单的字典

a = {
    '姓名': '姚明',              # 键(key):值(value)
    '年龄': 23,               # 键必须是唯一的,不能重复,空字典直接用{}表示
    '性别': '男'
    }
b = {}
print(a)
print(type(a))
print(type(b))

2.字典查询
使用键名查询

a = {
    '姓名': '姚明',              
    '年龄': 23,             
    '性别': '男'
    }
print('姓名',a['姓名'])         

使用get方法查询

a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
print(a.get('姓名'))       # get方法返回键值,无则返回默认值
print(a.get('多大'))
print(a.get('多大',18))

3.字典的修改、增加
通过键名修改值,如果键名存在则修改原始数据,如果不存在就添加新的键值对

a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
a['姓名'] = '张硕'
print(a)
a['籍贯'] = '淮安'
print(a)

使用内置方法setdefault增加键值对

a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
a.setdefault('籍贯','淮安')
print(a)

使用内置方法update修改字典
1.如果新字典中的键名与旧字典中键名一致,那么新的值会覆盖旧的值;
2.如果新字典中的键名存在但是旧字典中没有的则将新的键值对赋给旧字典;
3.新字典中不存在但是旧字典中存在的键值对依旧保留。

a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
b = {
    '姓名': '张硕',
    '年龄': 23,
    '籍贯': '淮安'
}
a.update(b)
print(a)

4.字典的删除
del删除两种用法:1.通过键名删除指定键值对;2.直接删除整个字典

a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
del a['性别']
del a
print(a)

clear直接将字典清空留下一个空字典

a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
a.clear()
print(a)

pop指定键名删除键值对

a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
a.pop('姓名')
print(a)

5.字典的复制

a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
b = a.copy()           # 如果字典内部元素值还是字典,元素内部依然引用
print(a)
print(b)

6.使用fromkeys创建一个新字典

a = {'name','age','sex'}       # 序列中的元素作为新字典的键
b = dict.fromkeys(a,20)        # 第二个参数作为新字典键的初始值
print(b)

7.字典的所有键名、值

# keys 返回字典中所有的键
a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
print(a.keys())
print('是否存在姓名?','姓名' in a.keys())   # 与in搭配,判断字典中是否存在键
print('是否存在多大?','多大' in a.keys())
# values返回字典中所有值
a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
print(a.values())

8.字典遍历

# items返回字典列表
a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
print(a.items())    # 返回值是一个列表
a = {
    '姓名': '姚明',
    '年龄': 23,
    '性别': '男'
    }
for k,v in a.items():
    print(k,":",v)    # 返回键值对
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Mingskr_xxx

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

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

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

打赏作者

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

抵扣说明:

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

余额充值