服务器之家

服务器之家 > 正文

Python 字典详解

时间:2022-01-21 00:18     来源/作者:绘梦狮

什么是字典?

字典在 Python 中是一个无序的数据集合,字典使用键值对进行存储。

?
1
Dict = {'key':'value'}

创建字典

  • 直接赋值,使用花括号 { }
  • 使用 Dict函数 创建空字典

1. 直接赋值

?
1
2
3
4
5
6
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
print(Dict)
print(type(Dict))
 
>>> {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
>>> <class 'dict'>

2. 使用 dict()函数创建空字典

?
1
2
3
4
5
6
Dict = dict()
print(Dict)
print(type(Dict))
 
>>> {}
>>> <class 'dict'>

3. 获取字典元素

?
1
2
3
4
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
print(Dict['察查司'])
 
>>> 陆之道

4. 唯一的键,如果字典中有俩个或多个相同的键,默认取最后一个

?
1
2
3
4
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏', '罚恶司': '李鬼'}
print(Dict['罚恶司'])
 
>>> 李鬼

小结:

  • 字典由键(key)和值(value)组成。
  • 创建可以使用花括号,也可以使用 dict 函数,元素之间用逗号隔开,键值之间使用冒号隔开。
  • 注:键(key)必须是不可变类型,比如数字,字符串,而值(value)随意。
  • 字典元素使用键(key)来获取。
  • 键是唯一的,尽量不要相同。

字典的增

?
1
Dict[键] = '值'
?
1
2
3
4
5
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
Dict['居民'] = '绘梦狮'
print(Dict)
 
>>> {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏', '居民': '绘梦狮'}

字典的改 

方法 描述
直接修改 直接修改,方法跟增差不多
update 将字典元素添加到另一个字典中,如果被添加字典已有该元素则修改,否则增加
?
1
Dict[键] = '值'
?
1
2
3
4
5
6
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
# 如果字典中已存在该键则修改对应的值,否则增加
Dict['罚恶司'] = '绘梦狮'
print(Dict)
 
>>> {'赏善司': '魏征', '罚恶司': '绘梦狮', '察查司': '陆之道', '阴律司': '崔珏'}

2. 使用 update 方

?
1
2
3
4
5
6
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
Dict2 = {'天师': '钟馗', '罚恶司': '天师钟馗'}
Dict.update(Dict2)
print(Dict)
 
>>> {'赏善司': '魏征', '罚恶司': '天师钟馗', '察查司': '陆之道', '阴律司': '崔珏', '天师': '钟馗'}

字典的删

方法 描述
del 删除某个元素,或删除整个字典
pop 删除某个元素
popitme 删除字典中最后一个元素
clear 清空字典

1. del 方法

?
1
2
3
4
5
6
7
8
9
10
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
# 删除某个元素根据键
del Dict['罚恶司']
 
# 删除整个字典
# del Dict
 
print(Dict)
 
>>> {'赏善司': '魏征', '察查司': '陆之道', '阴律司': '崔珏'}

2. pop 方法

?
1
2
3
4
5
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
Dict.pop('赏善司')
print(Dict)
 
>>> {'罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}

3. popitme 方法

?
1
2
3
4
5
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
Dict.popitem()
print(Dict)
 
>>> {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道'}

4. clear 方法

?
1
2
3
4
5
6
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
Dict.clear()
print(Dict)
 
# 因为字典被清空了
>>> {}

字典的查

方法 描述
in 判断元素是否在字典中,返回值为 Bool
not in 与 in 相反

因为这是通用方法,前面已经说了很多次,现在就跳过了。

字典取值

方法 描述
keys

获取字典中的键,返回一个迭代

values 获取字典中的值,返回一个迭代
items 获取字典的键值,返回一个迭代

1. keys 方法

?
1
2
3
4
5
6
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
Key = Dict.keys()
print(Key)
 
# 对于迭代对象我们可以遍历它,或者将它转化为列表进行操作
>>> dict_keys(['赏善司', '罚恶司', '察查司', '阴律司'])

2. values 方法

?
1
2
3
4
5
6
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
Value = Dict.values()
print(Value)
 
# 对于迭代对象我们可以遍历它,或者将它转化为列表进行操作
>>> dict_values(['魏征', '钟馗', '陆之道', '崔珏'])

3. items 方法

?
1
2
3
4
5
6
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
Item = Dict.items()
print(Item)
 
# 对于迭代对象我们可以遍历它,或者将它转化为列表进行操作
>>> dict_items([('赏善司', '魏征'), ('罚恶司', '钟馗'), ('察查司', '陆之道'), ('阴律司', '崔珏')])

字典复制

 老样子使用 copy 函数

?
1
2
3
4
5
6
7
8
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
copy_Dict = Dict.copy()
Dict.clear()
print(Dict)
print(copy_Dict)
 
>>> {} 
>>> {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}

遍历字典

  • 遍历 key
  • 遍历 value
  • 遍历 item
  • 遍历 key - value

1. 遍历 key

?
1
2
3
4
5
6
7
8
9
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
for i in Dict.keys():
    print(i)
 
 
>>> 赏善司
    罚恶司
    察查司
    阴律司

2. 遍历 value

?
1
2
3
4
5
6
7
8
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
for i in Dict.values():
    print(i)
 
>>> 魏征
    钟馗
    陆之道
    崔珏

3. 遍历 item

?
1
2
3
4
5
6
7
8
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
for i in Dict.items():
    print(i)
 
>>> ('赏善司', '魏征')
    ('罚恶司', '钟馗')
    ('察查司', '陆之道')
    ('阴律司', '崔珏')

4. 遍历 key与 value

?
1
2
3
4
5
6
7
8
Dict = {'赏善司': '魏征', '罚恶司': '钟馗', '察查司': '陆之道', '阴律司': '崔珏'}
for key, value in Dict.items():
    print(key, value)
 
>>> 赏善司 魏征
    罚恶司 钟馗
    察查司 陆之道
    阴律司 崔珏

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注服务器之家的更多内容!

原文链接:https://blog.csdn.net/m0_61763854/article/details/120664541

标签:

相关文章

热门资讯

蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部