ITPub博客

首页 > 数据库 > 数据库开发技术 > Python中字典的基础用法

Python中字典的基础用法

原创 数据库开发技术 作者:derekwh 时间:2024-04-11 12:32:26 0 删除 编辑

字典是一种非常强大的数据结构,它提供了一种高效的方式来存储和访问键值对数据。本文将详细介绍Python中字典的高级用法,帮助你更好地掌握这一数据结构。

合并字典

从Python 3.5开始,可以使用**kwargs的方式来合并两个字典。而在Python 3.9及更高版本中,可以使用联合操作符|来实现字典的合并。

# Python 3.5及以上
dict1 = {"name": "Max", "age": 28}
dict2 = {"city": "New York", "email": "max@xyz.com"}
merged_dict = {**dict1, **dict2}

# Python 3.9及以上
merged_dict = dict1 | dict2

从字典中移除某元素

使用pop函数可以从字典中移除元素,该函数还会返回被移除键的值。

my_dict = {"name": "Max", "age": 28}
value = my_dict.pop("age", "未找到键")
print("被移除的值:", value)

字典的遍历

可以通过多种方式遍历字典,包括遍历键、遍历值或同时遍历键和值。

# 遍历键
for key in my_dict.keys():
    print(key)

# 遍历值
for value in my_dict.values():
    print(value)

# 同时遍历键和值
for key, value in my_dict.items():
    print(key, value)

字典的复制

复制字典时需要注意,直接赋值只会复制引用,而不是创建一个新的字典。可以使用copy()方法或dict()函数来实现字典的真正复制。

my_dict = {"name": "Max", "age": 28}
dict_copy = my_dict.copy()
# 或者
dict_copy = dict(my_dict)

字典的嵌套

字典的值可以是任何类型的数据,包括另一个字典,这就是所谓的嵌套字典。

nested_dict = {"dictA": {"name": "Max", "age": 28},
               "dictB": {"name": "Alex", "age": 25}}

字典的嵌套访问和更新

对于嵌套字典,可以通过连续使用方括号[]或者使用get()方法来访问或更新深层的值。

nested_dict = {"dictA": {"name": "Max", "age": 28}}
# 访问
print(nested_dict["dictA"]["name"])  # 输出: Max
# 更新
nested_dict["dictA"]["age"] = 29
print(nested_dict)  # 输出: {'dictA': {'name': 'Max', 'age': 29}}

使用get()方法访问字典项

使用get()方法可以安全地访问字典中的项,如果键不存在,可以返回一个默认值,而不是抛出KeyError异常。

original_dict = {"a": 1, "b": 2, "c": 3, "d": 4}
value1 = original_dict.get("c", "无对应的数据")
value2 = original_dict.get("e", "无对应的数据")
print(value1)  
print(value2)  

输出打印结果。

3
无对应的数据

使用setdefault()方法访问和更新数据

setdefault()方法在某种程度上类似于get(),但如果键不存在于字典中,除了返回默认值外,还会在字典中添加该键并设置为默认值。

original_dict = {"a": 1, "b": 2, "c": 3, "d": 4}
original_dict.setdefault("e", 5)
print(original_dict)  # 输出: {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}


原文作者:Python学习杂记;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论
央企算法工程师,微信公众号: python数智工坊

注册时间:2021-03-14

  • 博文量
    305
  • 访问量
    162415