Python基础(6)——字典(dict)的定义与基本操作

一、字典(Dictionary)

  • 字典是一种可变容器类型,可存储任意类型对象。
  • 字典的每个 键(key)值(value)对 用冒号 ' : '  分割,每个键值对之间用逗号 ' , ' 分割,整个字典包括在花括号 { } 中 ,格式如下所示:
a = {key1 : value1, key2 : value2 ,key3 : value3}
  • 不允许同一个键出现两次,创建时如果同一个键被赋值两次,后一个值会被记住。值不需要唯一。
dict={'a':1,'b':2,'b':3}
>>> dict
{'a': 1, 'b': 3}
  • 值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
>>> dict1={'a':123,98.6:88,'c':'efg',('name'):'aa'}
>>> type(dict1)
<class 'dict'>

二、字典的基本操作

1、修改/添加字典元素

>>> dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
>>> dict['Age'] = 8             #修改
>>> dict
{'Name': 'Zara', 'Age': 8, 'Class': 'First'}

>>> dict['School'] = "JIAODA"   #添加
>>> dict
{'Name': 'Zara', 'Age': 8, 'Class': 'First', 'School': 'JIAODA'}
  •  dict.update ( dict1 )   把字典 dict1 的键/值对更新到 dict 里
>>> dict={"s1":99,"s2":88,"s3":77}
>>> dict1={"s1":34,"s4":56,"s5":90}
>>> dict.update(dict1)   #将字典 dict1 的键/值对更新到 dict 中
>>> dict
{'s1': 34, 's2': 88, 's3': 77, 's4': 56, 's5': 90}

2、删除字典元素

>>> dict={'a':1,'b':2,'c':3,'d':4}
>>> del dict['a']   # 删除键是'a'的键值对
>>> dict
{'b': 2, 'c': 3, 'd': 4}

>>> dict.pop('b')   # 删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。
2
>>> dict
{'c': 3, 'd': 4}

>>> dict.clear()    # clear() 删除字典内所有元素 ,清空后字典仍存在
>>> dict
{}

>>> del dict        #删除字典,del后字典不再存在,会引发异常
>>> dict
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'dict' is not defined

3、查询字典里的值

  • 把相应的键放入方括弧 [ ] 中。
>>> dict1={'s1':99,'s2':88,'s3':77}
>>> dict1['s1']  #查询字典 dict1 中键 s1 所对应的值
99

三、常用的字典内置函数

  • dict.keys( )   以列表返回一个字典所有的键
  • dict.values( )  以列表返回字典中的所有值
  • dict.items( )  以列表返回可遍历的(键, 值) 元组数组
>>> dict={"s1":99,"s2":88,"s3":77}
>>> dict.keys()
dict_keys(['s1', 's2', 's3'])
>>> dict.values()
dict_values([99, 88, 77])
>>> dict.items()
dict_items([('s1', 99), ('s2', 88), ('s3', 77)])
  • len(dict)   计算字典元素个数,即键的总数
>>> a={"s1":34,"s4":56,"s5":90}
>>> len(a)
3

 

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值