Python10——dict02字典元素的操作和序列解包

1.字典中元素的操作

(1)字典中元素的增加

给字典新增“键值对”。如果“键”已经存在,则覆盖旧的键值对;如果键不存在
则新增"键值对"

d1 = dict(name="jack", age=18, job="worker", lover="rose")
# d1[key] = vaule
d1["end"] = "died"
d1["lover"] = "lisa"
print(d1.items())

使用update()将新字典中的所有键值对全部添加到旧字典对象上,如果key
有重复,则直接覆盖

d2 = {"content": "romantic", "people": "three"}
d2.update(d1)
print(d2.items())

(2) 字典中元素的删除

del() clear() pop()

l1 = ["name", "role", "actor", "peer"]
l2 = ["唐人街探案", "唐人", "王宝强", "刘昊然"]
d3 = dict(zip(l1, l2))
print(d3.items())
# del()
del(d3["name"])  # {'role': '唐人', 'actor': '王宝强'}
# pop()
d4 = d3.pop("role")
print(d4)  # 唐人 删除指定的键值对,返回对应的值对象
print(d3)
# clean()
d3.clear()
print(d3)  # {}

(3) popitem()

随机删除和返回该键值对,字典是无序可变序列,因此没有第一个
元素和最后一个元素。popitem弹出随机项,若想一个接着一个地移除并处理项
这个方法就非常有效

d5 = dict(wenhou="你好", name="python")
a = d5.popitem() # 可以被变量接收
print(a)
print(d5)

2.序列解包

序列解包可以应用于元组,列表,字典。
方便我们对多个变量赋值

(1) 变量的系列解包赋值

x, y, z = "你好", "hello", "python"
print(z)

(2)元组的序列解包赋值

m, n, q = ("复仇者联盟", "黑寡妇", "美国队长")
(s, d, f) = ("美国队长", "唐尼", "斯嘉丽")
print(s[0])  # 美
# s[0] = "中"  # 元组不可以更改
[e, r, t] = ["你好,李焕英", "贾玲", "张小斐"]
print(e[1])
# e[0] = "您"
print(e)

(3)字典的序列解包赋值

序列解包用于字典的时候,默认的是"键"操作,如果需要对键值对操作,则需要
使用items();如果需要对值进行 操作,则需要使用values()

s = {"name": "唐人街探案", "role": "唐仁,王宝强,刘昊然"}
k1, k2 = s
print(k1, k2)  # name role 默认对键操作
kv1, kv2 = s.items()  # 对键值对操作
print(kv1, kv2)
v1, v2 = s.values()  # 对值开始操作
print(v1, v2)

3.练习

l1 = ["苏州", "科技", "大学"]
a, b, c = l1
print(a)
print(a[0])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

芝麻汤圆圆圆子

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

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

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

打赏作者

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

抵扣说明:

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

余额充值