python语法基础(字典)

目录

字典

创建字典

访问字典

添加和修改元素

删除元素

遍历字典

判断是否存在元素

拷贝字典

合并两个字典


字典

键(key)对应的值(value)。key必须唯一

{}表示字典

字典中的key和value之间用冒号:分隔,元素之间用逗号,分隔

创建字典

  • a=dict(key1=value 1,key2=value 2,key3=value 3)

key只能是字符串,不能是数字。

  • a=dict([key1,value 1],[key2,value 2],[key3,value 3])

  • zip(sequence1,qequence2...)

把多个序列相同下标的元素组装成元组,结果是一个可迭代对象(就是一一对应)

keys = ['a','b','c']
value = [123,456,789]
zipped = zip(keys,value)
print(zipped)   #<zip object at 0x000001CCB9FC5340>
print(list(zipped))   #[('a', 123), ('b', 456), ('c', 789)]
print(list(zipped))   #[]
keys = ['a','b','c']
value1 = [123,456,789]
value2 = [321,654,987,1000]
zipped = list(zip(keys,value1,value2))
print(zipped)   #[('a', 123, 321), ('b', 456, 654), ('c', 789, 987)]

访问字典

  • a[x]:a为dict、x为a中的一个key,必须存在。

  • a.get(x,value=None):a表示字典,x表示查询的key,value表示默认值(不存在返回的)

添加和修改元素

直接利用key可以访问对应的value,类似的,添加元素、修改元素也是直接利用key和value就能进行添加或者更新

删除元素

可以利用python本身的删除语法del del s["a"]

也可以用字典的删除方法pop s.pop("a")

遍历字典

a.keys():所有key a.values():所有value

a.items():二元组(key,value)

  • 与List一样,直接利用for语句就可以遍历字典
    •  for x in a:其中x是循环变量,a是字典,此时遍历的是a的key列表
s = {'a':123,'b':456,'c':789}
for x in s:
    print(x)
  • 利用a.keys()、a.values()、a.items()可以分别循环遍历key、value、二元组(key,value)
s = {'a':123,'b':456,'c':789}
for x in s.keys():
    print(x)
for y in s.values():
    print(y)
for x,y in s.items():
    print(x,y)

判断是否存在元素

字典中可以使用in、not in判断某元素是否在字典中

X in a、x in a.keys():判断x是否在a的key中

X in a.values():判断x是否在a的value中

(x,y) in a.items():判断x是否在a的key中,并且对应的value为y

拷贝字典

与list类似,直接赋值无法进行复制,需要使用copy函数完成复制

合并两个字典

字典利用update方法可以将另一个字典的key-value对更新到已有字典中

a.update(b):把字典b中的每一个元素放入a中更新:

如果b中的key在a中没有,则直接在a中添加一组新的key-value对

如果b中的key在a中有了,则直接更新对应的value

s = {'a':123,'b':456,'c':789}
t = {'a':321,'d':1000}
s.update(t)   #t.update(s)
print("s = ",s)
print("t = ",t)

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值