python字典的基本操作
Python中的字典是一种可变的无序键(key)/值(value)对集合数据类型,也可以称为关联数组或哈希表。在本文中,我们将介绍python字典的基本操作,包括如何创建、添加、修改、删除键值对,并且讲解如何遍历字典及以不同的方式访问字典中的值。
创建字典
可以使用大括号来创建字典,大括号里面包含了逗号分隔的键值对,每个键值对之间用冒号分隔。以下是一个简单的字典示例:
dict1 = {'name': 'John', 'age': 25, 'city': 'New York'}
print(dict1)
输出:
{'name': 'John', 'age': 25, 'city': 'New York'}
另外一种创建字典的方法是利用dict
函数,以插入键值对的方式逐个创建字典元素。以下是一个示例:
dict2 = dict(name='Tom', age=20, city='San Francisco')
print(dict2)
输出:
{'name': 'Tom', 'age': 20, 'city': 'San Francisco'}
添加键值对
可以像访问一个键对应的值一样通过字典键的方式直接在字典中添加新的键值对,例如:
dict1['occupation'] = 'engineer'
print(dict1)
输出:
{'name': 'John', 'age': 25, 'city': 'New York', 'occupation': 'engineer'}
修改键值对
修改字典中的键值对非常简单,只需要通过键索引到相应的值,然后重新为该值赋一个新值即可完成修改,例如:
dict1['age'] = 30
print(dict1)
输出:
{'name': 'John', 'age': 30, 'city': 'New York', 'occupation': 'engineer'}
删除键值对
可以使用pop()函数从字典中删除一个键值对。pop()函数所需的实参是需要删除的键,删除后该键值对的值将被返回。以下是一个例子:
removed_value = dict1.pop('occupation')
print(dict1)
print(removed_value)
输出:
{'name': 'John', 'age': 30, 'city': 'New York'}
engineer
遍历字典
在Python中遍历字典有多种方法,其中for循环遍历字典是最常见的方法。以下是一个for循环遍历字典的简单示例:
dict1 = {'name': 'John', 'age': 25, 'city': 'New York'}
for key in dict1:
print(key, ':', dict1[key])
输出:
name : John
age : 25
city : New York
另一种遍历字典的方法是使用items()
函数,它返回一个由所有(键
,值
)元组组成的列表,可以通过遍历该列表来获得键值对,例如:
dict1 = {'name': 'John', 'age': 25, 'city': 'New York'}
for key, value in dict1.items():
print(key, ':', value)
输出:
name : John
age : 25
city : New York
而keys()
函数则返回一个以字典中所有键为元素的列表,可以通过遍历该列表并使用键的形式访问字典元素来实现遍历,例如:
dict1 = {'name': 'John', 'age': 25, 'city': 'New York'}
for key in dict1.keys():
print(key, ':', dict1[key])
输出:
name : John
age : 25
city : New York
访问字典中的值
访问字典中的值主要是基于字典的键,可以使用方括号[]来访问对应的键值对应的值,例如:
dict1 = {'name': 'John', 'age': 25, 'city': 'New York'}
print(dict1['name'])
输出:
John
在访问字典中的元素时,如果指定的键不存在,则会抛出KeyError
异常。可以使用get()
方法来避免这种情况的发生。get()
方法接受两个参数,第一个参数是要获取的键名,第二个参数是它的默认返回值,例如:
dict1 = {'name': 'John', 'age': 25, 'city': 'New York'}
print(dict1.get('occupation', 'N/A'))
输出:
N/A
字典的嵌套
字典也可以嵌套在其他字典中,可以使用嵌套的方式来存储更多的信息。例如下面这个字典包含了两个嵌套的字典:
users = {
'user1': {
'name': 'John',
'age': 25,
'city': 'New York'
},
'user2': {
'name': 'Tom',
'age': 30,
'city': 'San Francisco'
}
}
可以使用链式索引来访问嵌套字典中的值:
print(users['user1']['name'])
输出:
John
字典推导式
字典推导式是一种快捷简洁的创建字典的方法,与列表推导式类似。以下是一个简单的字典推导式示例:
squares = {x: x*x for x in range(6)}
print(squares)
输出:
{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25}
你可以使用if语句进一步筛选要加入字典的值:
even_squares = {x: x*x for x in range(6) if x % 2 == 0}
print(even_squares)
输出:
{0: 0, 2: 4, 4: 16}
结论
以上是关于Python字典的基本操作的介绍。字典是一种非常常见的数据类型,可以用于存储键(字符串、整数等)及其相应的值,对于Python编程非常有用。通过本文的学习,你应该对Python字典的基本操作有了一定的了解。