一篇彻底掌握Python 字典(Dictionary)的用法

一、字典的创建

字典是一种可变容器模型,可以存储任意类型对象。

字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式如下所示:

d = {
    
    key1 : value1, key2 : value2 }

键一般是唯一的,如果键重复。最后的一个键值对会覆盖前面的,值不需要唯一。

比如下面这两行代码,就是创建一个字典dict,然后设立键值对,其中b这个键被赋值了两次。因为键肯定是唯一的,所以会保留最后的'b':3这个键值对。

dict = {
    
    'a': 1, 'b': 2, 'b': 3}
print(dict)

我们看下输出结果:
在这里插入图片描述
值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

一个简单的字典实例:

dict = {
    
    'CSDN': 'Forever Coding', 'HuaWeiyun': 'abcd1234', 66: '3258'}

也可以这样创建字典:

dict1 = {
    
     'abc': 456 }
dict2 = {
    
     'abc': 123, 98.6: 37 }

二、字典的查找

把相应的键放入熟悉的方括弧,如下实例:

dict = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
print(dict['a'])
print(dict['d'])

以上实例输出结果:
在这里插入图片描述
如果用字典里没有的键访问数据,会输出错误。看个实例:

dict = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
print(dict['e'])

输出结果如下:

Traceback (most recent call last):
  File "dict.py", line 3, in <module>
    print(dict['e'])
KeyError: 'e'

三、字典的修改

我们在刚刚的实例基础上更新下b和c两个键,再添加一个键为love,如下:

dict = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
dict['b']=3#更新
dict['c']=1#更新
dict['love']=520#添加
print(dict)

我们输出下结果:

{
    
    'a': 1, 'b': 3, 'c': 1, 'd': 4, 'love': 520}

四、字典的删除

能删单一的元素也能清空字典,清空只需一项操作clear。删除一个字典用del命令,我们看几个例子:

dict = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
dict.clear()
print(dict)

输出结果为:
在这里插入图片描述

dict = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
del dict['d']
print(dict)

在这里插入图片描述

五、字典的内置函数

Python字典包含了以下内置函数:

序号 函数及描述
1 cmp(dict1, dict2) 比较两个字典元素。
2 len(dict) 计算字典元素个数,即键的总数。
3 str(dict) 输出字典可打印的字符串表示。
4 type(variable) 返回输入的变量类型,如果变量是字典就返回字典类型。
dict = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
print(len(dict))

在这里插入图片描述

dict = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
print(str(dict))

在这里插入图片描述

dict = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
print(type(dict['a']))

在这里插入图片描述

dict = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
print(type(dict))

在这里插入图片描述

六、字典的内置方法

Python字典包含了以下内置方法:

1、dict.clear()

删除字典内所有元素。上面已经展示过了,不再赘述了。

2、dict.copy()

返回一个字典的浅复制。注意两个指向的是不同的字典对象,相互独立。

dict1 = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
dict2=dict1.copy()
dict2['b']='CSDN'
print(dict1)
print(dict2)

在这里插入图片描述

3、dict.get(key, default=None)

返回指定键的值,如果值不在字典中返回default值。

dict1 = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
print(dict1.get('e',5))

在这里插入图片描述

4、dict.keys()

以列表返回一个字典所有的键。

dict1 = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
print(dict1.keys())

在这里插入图片描述

5、dict.items()

以列表返回可遍历的(键, 值) 元组数组。

dict1 = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
print(dict1.items())

在这里插入图片描述

6、dict.values()

以列表返回字典中的所有值。

dict1 = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
print(dict1.values())

在这里插入图片描述

7、pop(key)

删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。

dict1 = {
    
    'a': 1, 'b': 2, 'c': 3,'d':4}
dict1.pop('a')
print(dict1)

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_42257666/article/details/121273934