python笔记 - 字典(dict)(八)

一种可变容器模型,且可存储任意类型对象
由一组键(key)值(value)对组成, {key1:value1, key2:value2,…}
用{}表示,键值对用逗号分隔,键与值用冒号分隔,键唯一(数字、字符串、元组)

1、访问字典中的值

与列表不同的是,列表使用索引获取元素,字典使用key获取value值
dict[key]

>>> dict1 = {'k1':'v1', 'k2':'v2', 'k3':'v3'}
>>> type(dict1)
<class 'dict'>
>>> dict1['k1']
'v1'
>>> dict1['k3']
'v3'

2、添加、更新键值对

dict[key] = value

>>> dict1 = {'name': 'joker', 'sex':'男'}
>>> dict1
{'name': 'joker', 'sex': '男'}
>>> dict1['age'] = 26
>>> dict1['sex'] = 'man'
>>> dict1
{'name': 'joker', 'sex': 'man', 'age': 26}

3、删除字典及键值对

del dict
del dict[key]

>>> dict1 = {'name': 'joker', 'sex': '男', 'age': 26}
>>> del dict1['age']
>>> dict1
{'name': 'joker', 'sex': '男'}
>>> del dict1
>>> dict1
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'dict1' is not defined

4、获取字典中所有键的迭代器

dict.keys()

>>> dict1 = {'name': 'joker', 'sex': '男', 'age': 26}
>>> dict1.keys()
dict_keys(['name', 'sex', 'age'])

5、获取字典中所有值的迭代器

dict.values()

>>> dict1 = {'name': 'joker', 'sex': '男', 'age': 26}
>>> dict1.values()
dict_values(['joker', '男', 26])

6、返回键值对的元组列表

dict.items()

>>> dict1 = {'name': 'joker', 'sex': '男', 'age': 26}
>>> dict1.items()
dict_items([('name', 'joker'), ('sex', '男'), ('age', 26)])

7、返回指定键的值,没有返回None

与dict[key]功能类似,但是dict[key]获取的key不存在会报错,而dict.get(key)中key不存在返回None
dict.get(key)

>>> dict1 = {'name': 'joker', 'sex': '男', 'age': 26}
>>> dict1['hoppy']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'hoppy'
>>> print(dict1.get('hoppy'))
None

8、删除字典中指定键的值,并返回该值

dict.pop(key)

>>> dict1 = {'name': 'joker', 'sex': '男', 'age': 26}
>>> dict1.pop('sex')
'男'
>>> dict1
{'name': 'joker', 'age': 26}

9、键不存在,添加该键,值为None

dict.setdefault(key)

>>> dict1 = {'name': 'joker', 'sex': '男', 'age': 26}
>>> dict1.setdefault('hoppy')
>>> dict1
{'name': 'joker', 'sex': '男', 'age': 26, 'hoppy': None}

10、将指定字典更新到当前字典

dict1.update(dict2)

>>> dict1 = {'name': 'joker', 'sex': '男', 'age': 26}
>>> dict2 = {'hoppy':'sing'}
>>> dict1.update(dict2)
>>> dict1
{'name': 'joker', 'sex': '男', 'age': 26, 'hoppy': 'sing'}

11、清空字典内所有元素

dict.clear()

>>> dict1 = {'name': 'joker', 'sex': '男', 'age': 26}
>>> dict1.clear()
>>> dict1
{}

12、复制字典

dict.copy()

>>> dict1 = {'name': 'joker', 'sex': '男', 'age': 26}
>>> dict2 = dict1.copy()
>>> dict2
{'name': 'joker', 'sex': '男', 'age': 26}
>>> dict1 == dict2
True
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值