字典是Python内置的基本数据类型之一,其具有键-值对的形式,通过键(key)可以快速访问到对应的值(value)。定义字典的方式如下:
person = {'name': '张三', 'age': 20, 'gender': '男'}
通过键取值的方法有几种,下面分别进行说明。
1. 方括号取值
print(person['name']) # 输出:张三
方括号中填写键名即可取得对应的值。
2. get()方法取值
print(person.get('age')) # 输出:20
get()方法可以接受两个参数,第一个参数是键名,第二个参数是当键不存在时默认返回的值。
3. items()方法取值
for k, v in person.items():
print(k, v)
items()方法返回一个包含所有键值对的元组列表,可以通过for循环遍历获取键名和对应的值。
Python字典中还有删除和修改键值的方法,下面分别介绍。
1. 删除字典键
del person['gender'] # 删除gender键
print(person) # 输出:{'name': '张三', 'age': 20}
del语句可以删除指定键名的键值对。
2. 修改字典键值
person['age'] = 22 # 将age键的值修改为22
print(person) # 输出:{'name': '张三', 'age': 22, 'gender': '男'}
可以通过赋值语句修改指定键的值。
Python字典中还有查询和遍历字典键的方法,下面进行详细讲解。
1. 查询字典键是否存在
print('name' in person) # 输出:True
print('salary' in person) # 输出:False
in关键字可以查询指定的键是否存在,并返回True或False。
2. keys()方法获取所有键名
print(person.keys()) # 输出:dict_keys(['name', 'age', 'gender'])
keys()方法返回一个包含所有键名的视图对象,可以通过遍历该对象进行操作。
3. values()方法获取所有键值
print(person.values()) # 输出:dict_values(['张三', 22, '男'])
values()方法返回一个包含所有键值的视图对象,可以通过遍历该对象进行操作。
4. 循环遍历字典
for k in person:
print(k, person[k])
可以通过for循环直接遍历字典,遍历出的k为字典中每个键名,person[k]则为其对应的值。
Python字典中的键值是无序的,可以通过sorted()函数进行排序。
person = {'name': '张三', 'age': 20, 'gender': '男'}
# 按键名排序
sorted_person_by_key = sorted(person.items(), key=lambda x: x[0])
print(sorted_person_by_key) # 输出:[('age', 20), ('gender', '男'), ('name', '张三')]
# 按值排序
sorted_person_by_value = sorted(person.items(), key=lambda x: x[1])
print(sorted_person_by_value) # 输出:[('age', 20), ('name', '张三'), ('gender', '男')]
以上将字典转换为元组列表后使用sorted()函数排序,其中key参数为自定义的排序函数,返回各个元素所对应的键名或键值,通过这些值进行排序。
Python字典中的键值获取可以通过方括号、get()方法和items()方法。还可以通过del语句进行键值对的删除,通过赋值语句进行键值的修改。查询和遍历字典可以使用in关键字、keys()方法、values()方法和直接使用for循环。字典的键值可以通过sorted()函数进行排序。
标签: python报错