python如何对dict
- 行业动态
- 2024-04-07
- 1
在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)
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/309589.html