dict 和 set 的 8 个经典使用例子

简介: dict 和 set 的 8 个经典使用例子

1. 字典更新

使用字典的时候需要给现有的字典插入数据使用update()方法

# 初始信息
info_dict = {'姓名': '张三', '性别': '男', '住址': '北京'}
 
# 添加信息
info_dict.update({'学校': '清华', '学号': '007'})
 
'''
{'姓名': '张三', '性别': '男', '住址': '北京', '学校': '清华', '学号': '007'}
'''

2.字典合并

合并字典我们可以使用{**d1,**d2} 实现合并 d1 和 d2,返回一个新字典:

# 字典1
dict_1 = {'a': 'aa', 'b': 'bb', 'c': 'cc'}
 
# 字典2
dict_2 = {'1': 11, '2': 22, '3': 33}
 
# 合并
new_dict = {**dict_1, **dict_2}
 
'''
{'a': 'aa', 'b': 'bb', 'c': 'cc', '1': 11, '2': 22, '3': 33}
'''

3.字典排序key

给字典排序我们这里使用的是sort()方法按照键进行排序

# 初始字典
my_dict = {'1': 11, '8': 88, '6': 66, '7': 77, '5': 55, '2': 22, '9': 99}
 
# 按照key对字典排序
sort_dict = sorted(my_dict.items(),key=lambda x: x[0])
print(sort_dict)
 
 
'''
[('1', 11), ('2', 22), ('5', 55), ('6', 66), ('7', 77), ('8', 88), ('9', 99)]
'''

4.字典排序key

给字典排序我们这里使用的是sort()方法按照值进行排序

my_dict.items() 返回元素为 (key, value) 的可迭代类型(Iterable),key 函数的参数 x 便是元素 (key,

value),所以 x[1] 取到字典的值。

# 初始字典
my_dict = {'1': 11, '8': 18, '6': 16, '7': 17, '5': 15, '2': 12, '9': 19}
 
# 按照value对字典排序
sort_dict = sorted(my_dict.items(),key=lambda x: x[1])
print(sort_dict)
 
 
'''
[('1', 11), ('2', 12), ('5', 15), ('6', 16), ('7', 17), ('8', 18), ('9', 19)]
'''

5. 字典差集

字典求差有两种方式,使用的方法是一样的:

# 初始字典
my_dict1 = {'1': 11, '8': 88, '6': 66, '7': 77, '5': 55, '2': 22, '9': 99}
my_dict2 = {'1': 11, '88': 888, '6': 66, '7': 77, '5': 55, '22': 222, '9': 99}
 
# 差集(字典1有字典2无)
diff_dict = dict([(k,v) for k,v in my_dict1.items() if k not in my_dict2])
print('1-2', diff_dict)
 
# 差集(字典2有字典1无)
diff_dict = dict([(k,v) for k,v in my_dict2.items() if k not in my_dict1])
print('2-1', diff_dict)
 
 
'''
1-2 {'8': 88, '2': 22}
2-1 {'88': 888, '22': 222}
'''

6.获取最大键

通过 keys 拿到所有键,获取最大键,返回 (最大键,值) 的元组

# 求最大key函数
def max_keys(dict):
    if len(dict) == 0:
        return []
    max_key = max(dict.keys())
    return max_key, dict[max_key]
 
# 初始字典
my_dict = {'1': 11, '8': 18, '6': 16, '7': 17, '5': 15, '2': 12, '9': 19}
print(max_keys(my_dict))
 
'''
('9', 19)
'''


7.获取最大键值

通过 keys 拿到所有键,获取最大键,返回 (最大键,值) 的元组

# 求最大values函数
def max_values(dict):
    if len(dict) == 0:
        return []
    max_val = max(dict.values())
    # 最大值可能有多个相同的数值
    return [(key, max_val) for key in dict if dict[key]==max_val]
 
# 初始字典
my_dict = {'1': 20, '8': 18, '6': 16, '7': 17, '5': 15, '2': 12, '9': 19, '3':20, '4':20}
print(max_values(my_dict))
 
 
'''
[('1', 20), ('3', 20), ('4', 20)]
'''

8. 求极值

找出集合中的最大、最小值

# 求最大最小值函数
def max_min(set):
    return max(set), min(set)
 
# 初始集合
my_set = {456, -81, 75, 64, 15, 55, 141, 155, 100, 512}
print(max_min(my_set))
 
 
'''
(512, -81)
'''


好了,今天的分析就到此结束啦,

有问题的小伙伴留言哦~

相关文章
|
5月前
|
存储 Python
Python中list, tuple, dict,set的区别和使用场景
Python中list, tuple, dict,set的区别和使用场景
183 2
|
5月前
|
存储 索引 Python
Python教程:深入了解 Python 中 Dict、List、Tuple、Set 的高级用法
Python 中的 Dict(字典)、List(列表)、Tuple(元组)和 Set(集合)是常用的数据结构,它们各自有着不同的特性和用途。在本文中,我们将深入了解这些数据结构的高级用法,并提供详细的说明和代码示例。
214 2
|
4月前
|
存储 语音技术 Python
语音识别,函数综合案例,黑马ATM,/t/t一个对不齐,用两个/t,数据容器入门,数据容器可以分为列表(list)、元组(tuple)、字符串(str)、集合(set)、字典(dict)
语音识别,函数综合案例,黑马ATM,/t/t一个对不齐,用两个/t,数据容器入门,数据容器可以分为列表(list)、元组(tuple)、字符串(str)、集合(set)、字典(dict)
|
6月前
|
存储 安全 Java
Python教程第3章 | 集合(List列表、Tuple元组、Dict字典、Set)
Python 列表、无序列表、字典、元组增删改查基本用法和注意事项
101 1
|
6月前
|
存储 索引 Python
python数据结构,集合(set)和字典(dict)之间的主要区别是什么?
python数据结构,集合(set)和字典(dict)之间的主要区别是什么?
241 2
|
Python 容器
python中dict的详细用法以及set集合使用
python中dict的详细用法以及set集合使用
184 0
|
存储 JavaScript Python
Python基础教程之dict和set
Python基础教程之dict和set
|
存储 索引 Python
Python学习:dict和set类型的用法
Python学习:dict和set类型的用法
95 0
|
索引 Python
python 内置数据结构list、set、dict、tuple(三)
python 内置数据结构list、set、dict、tuple(三)
186 0
|
索引 Python
python 内置数据结构list、set、dict、tuple(二)
python 内置数据结构list、set、dict、tuple(二)
161 0

热门文章

最新文章