当前位置:首页 > 行业动态 > 正文

python如何对dict

在Python中,字典(dict)是一种非常常用的数据结构,它用于存储键值对(keyvalue pairs),字典的主要优点是可以通过键(key)快速查找到对应的值(value),而不需要遍历整个列表或元组,字典的使用方法如下:

1、创建字典

创建字典的方法有两种:一种是使用花括号 {} 和冒号 :,另一种是使用内置的 dict() 函数。

方法一:使用花括号 {} 和冒号 :

my_dict = {"name": "张三", "age": 30, "city": "北京"}

方法二:使用内置的 dict() 函数

my_dict = dict(name="张三", age=30, city="北京")

2、访问字典中的值

要访问字典中的值,可以使用键(key)作为索引,如果键不存在于字典中,会抛出一个 KeyError 异常,为了避免这种情况,可以使用 get() 方法,它会返回键对应的值,如果键不存在,则返回默认值(默认为 None)。

使用索引访问字典中的值
print(my_dict["name"])  # 输出:张三
使用 get() 方法访问字典中的值,避免 KeyError 异常
print(my_dict.get("age"))  # 输出:30
print(my_dict.get("gender", "男"))  # 输出:男

3、修改字典中的值

要修改字典中的值,只需将新的值赋给相应的键,如果键不存在于字典中,可以使用 setdefault() 方法添加一个新的键值对。

修改字典中的值
my_dict["age"] = 31
print(my_dict)  # 输出:{'name': '张三', 'age': 31, 'city': '北京'}
使用 setdefault() 方法添加一个新的键值对
my_dict.setdefault("gender", "男")
print(my_dict)  # 输出:{'name': '张三', 'age': 31, 'city': '北京', 'gender': '男'}

4、删除字典中的键值对

要删除字典中的键值对,可以使用 del 关键字,或者使用 pop() 方法。del 关键字会删除指定的键及其对应的值,而 pop() 方法会删除指定的键并返回其对应的值,如果要删除的键不存在于字典中,这两种方法都不会引发异常。

使用 del 关键字删除字典中的键值对
del my_dict["city"]
print(my_dict)  # 输出:{'name': '张三', 'age': 31}
使用 pop() 方法删除字典中的键值对,并返回其对应的值
removed_value = my_dict.pop("name")
print(removed_value)  # 输出:张三
print(my_dict)  # 输出:{'age': 31}

5、遍历字典

可以使用 for 循环遍历字典的键、值或键值对,还可以使用 items()、keys() 和 values() 方法分别获取字典的键值对、键和值。

遍历字典的键、值和键值对
for key, value in my_dict.items():
    print(key, value)
for key in my_dict.keys():
    print(key)
for value in my_dict.values():
    print(value)
使用 items()、keys() 和 values() 方法获取字典的键值对、键和值,并进行操作
for key, value in my_dict.items():
    if key == "age":
        value += 1
print(my_dict)  # 输出:{'name': '张三', 'age': 32, 'city': '北京'}

6、合并字典

可以使用 update() 方法将一个字典的键值对添加到另一个字典中,如果两个字典中有相同的键,后一个字典的值会覆盖前一个字典的值,还可以使用 ** 运算符将一个字典解包为另一个字典的键值对。

使用 update() 方法合并字典
my_dict1 = {"name": "张三", "age": 30}
my_dict2 = {"city": "北京", "gender": "男"}
my_dict1.update(my_dict2)
print(my_dict1)  # 输出:{'name': '张三', 'age': 30, 'city': '北京', 'gender': '男'}
使用 ** 运算符合并字典(适用于较短的字典)
my_dict1 = {"a": 1, "b": 2}
my_dict2 = {"b": 3, "c": 4}
my_dict1.update(**my_dict2)
print(my_dict1)  # 输出:{'a': 1, 'b': 3, 'c': 4}(注意:这种方法不会改变原始的 my_dict1)
0

随机文章