Python自学教程7-字典有哪些常用操作

1. 基本介绍

在Python中,字典是一种映射类型的数据结构,用{ }来表示。也就是说,字典中的每一个元素都是由一个键和一个值组成,其中键是唯一的,值可以重复。简单来说,字典就是一个无序的键值对集合,可以通过键来访问对应的值。

字典的基本形式:

dict = {key1:value1, key2:value2, key3:value3}

注: 字典中的键是唯一的,如果同一个键出现两次,则只有第一个键值对被保留,后面的将会被忽略。

2. 字典的操作

2.1 字典元素的访问

通过键名(key)可以访问字典的元素值(value),即:字典名[key]。如果key不存在,则会抛出异常。不过也可以调用字典的get()方法来访问指定的键值,默认情况下,如果访问不存在的键时,get()方法会返回None值。如果指定了第二个参数,则返回该参数。例如:

dict = {'Name': 'Tom', 'Age': 20, 'Sex': 'male'}

# 访问键值

print(dict['Name']) # 输出 Tom

# 访问不存在的键时,抛出KeyError异常

print(dict['xxx']) # 报错 KeyError: 'xxx'

# 使用get()方法访问键值

print(dict.get('Name')) # 输出 Tom

print(dict.get('xxx')) # 输出 None

print(dict.get('xxx', "没有这个键")) # 输出 没有这个键

2.2 字典元素的修改和添加

如果想修改字典中的元素,则直接通过键来引用该元素,并重新赋值即可。如果元素不存在,则在字典中会新增该元素。

dict = {'Name': 'Tom', 'Age': 20, 'Sex': 'male'}

# 修改已有键的值

dict['Age'] = 21

print(dict) # 输出 {'Name': 'Tom', 'Age': 21, 'Sex': 'male'}

# 新增键值

dict['School'] = 'Beijing University'

print(dict) # 输出 {'Name': 'Tom', 'Age': 21, 'Sex': 'male', 'School': 'Beijing University'}

2.3 字典元素的删除

可以使用del语句来删除字典中指定的键值对。另外,字典也有自带的删除方法pop(),它可以弹出指定键的键值对。如果指定的键不存在,则返回一个默认值。

dict = {'Name': 'Tom', 'Age': 20, 'Sex': 'male'}

# 删除键是'Name'的元素

del dict['Name']

print(dict) # 输出 {'Age': 20, 'Sex': 'male'}

# 使用pop()方法删除键是'Age'的元素

dict.pop('Age')

print(dict) # 输出 {'Sex': 'male'}

# 删除不存在的键,报错

del dict['xxx'] # 报错 KeyError: 'xxx'

# 使用pop()方法删除不存在的键

dict.pop('xxx', "这个键不存在") # 输出 这个键不存在

3. 其他常用方法

3.1 字典的长度

使用 len()来获取字典元素的数量。

dict = {'Name': 'Tom', 'Age': 20, 'Sex': 'male'}

print(len(dict)) # 输出 3

3.2 字典的键值查找

keys()方法和values()方法可以分别返回字典中所有的键和值。如果需要获取键值对,可以使用items()方法,该方法会返回包含字典所有(键, 值)元组的列表。

dict = {'Name': 'Tom', 'Age': 20, 'Sex': 'male'}

# 获取所有的键

print(dict.keys()) # 输出 dict_keys(['Name', 'Age', 'Sex'])

# 获取所有的值

print(dict.values()) # 输出 dict_values(['Tom', 20, 'male'])

# 获取所有的(键, 值)元组

print(dict.items()) # 输出 dict_items([('Name', 'Tom'), ('Age', 20), ('Sex', 'male')])

3.3 字典的遍历

字典是一个非常常用的数据类型,我们需要经常遍历它。字典可以通过for循环遍历,例如:

dict = {'Name': 'Tom', 'Age': 20, 'Sex': 'male'}

for key in dict:

print(key, dict[key])

也可以使用items()方法来实现遍历:

dict = {'Name': 'Tom', 'Age': 20, 'Sex': 'male'}

for key,value in dict.items():

print(key,value)

3.4 字典生成式

在Python中,我们经常需要生成一个新的字典,可以使用字典生成式来实现。具体实现方式与列表生成式相似,只不过表达式用的是键值对。

# 生成一个key从1到10,value为key的平方的字典

dict = {x: x**2 for x in range(1,11)}

print(dict)

总结:

字典是Python中非常常见的数据类型,应用十分广泛。本文主要介绍了字典的定义和常见操作,包括字典元素的访问、修改、添加、删除,以及其他常用的方法如字典的长度、键值查找、遍历以及字典生成式的实现。

后端开发标签