Python地图(Map)是Python中的一种数据结构,它用于存储键值对(key-value pairs),在Python中,字典(dictionary)就是一种内置的地图类型,字典中的键(key)是唯一的,而值(value)可以是任意类型的数据,字典的主要操作包括添加、删除、修改和查找键值对等。
1、创建字典
创建字典的方法有很多,以下是一些常见的方法:
- 使用大括号({})创建一个空字典:empty_dict = {}
- 使用dict()
函数创建一个空字典:empty_dict = dict()
- 使用大括号({})创建一个包含键值对的字典:dict1 = {'key1': 'value1', 'key2': 'value2'}
- 使用dict()
函数创建一个包含键值对的字典:dict1 = dict(key1='value1', key2='value2')
2、访问字典中的值
要访问字典中的值,可以使用键作为索引。
dict1 = {'key1': 'value1', 'key2': 'value2'} print(dict1['key1']) # 输出:value1
如果访问不存在的键,会抛出KeyError
异常,为了避免这种情况,可以使用get()
方法,如果键不存在,返回一个默认值:
dict1 = {'key1': 'value1', 'key2': 'value2'} print(dict1.get('key3')) # 输出:None
3、修改字典中的值
要修改字典中的值,可以直接通过键来赋值:
dict1 = {'key1': 'value1', 'key2': 'value2'} dict1['key1'] = 'new_value1' print(dict1) # 输出:{'key1': 'new_value1', 'key2': 'value2'}
4、添加键值对
要向字典中添加键值对,可以使用以下方法:
- 直接通过新的键来赋值:dict[new_key] = new_value
- 使用update()
方法:dict.update({new_key: new_value})
- 使用setdefault()
方法:dict.setdefault(new_key, default_value)
,如果键不存在,则添加键值对并返回默认值,否则返回已存在的值。
dict1 = {'key1': 'value1', 'key2': 'value2'} dict1['key3'] = 'value3' # 添加键值对:{'key1': 'value1', 'key2': 'value2', 'key3': 'value3'} dict1.update({'key4': 'value4'}) # 添加键值对:{'key1': 'value1', 'key2': 'value2', 'key3': 'value3', 'key4': 'value4'} dict1.setdefault('key5', 'default_value') # 如果键不存在,则添加键值对并返回默认值:{'key1': 'value1', 'key2': 'value2', 'key3': 'value3', 'key4': 'value4', 'key5': 'default_value'}
5、删除键值对
要删除字典中的键值对,可以使用以下方法:
- 使用del
关键字:del dict[key]
- 使用pop()
方法:dict.pop(key, default_value)
,如果键不存在,则返回默认值并删除该键值对,否则返回已存在的值并删除该键值对。
- 使用popitem()
方法:dict.popitem()
,删除并返回一个随机的键值对。
- 使用clear()
方法:dict.clear()
,清空字典中的所有键值对。
dict1 = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'} del dict1['key2'] # 删除键值对:{'key1': 'value1', 'key3': 'value3'} dict1.pop('key3') # 如果键不存在,则返回默认值并删除该键值对:{'key1': 'value1'} dict1.popitem() # 删除并返回一个随机的键值对:{'key1': 'value1'} dict1.clear() # 清空字典中的所有键值对:{}
6、遍历字典
要遍历字典中的键值对,可以使用以下方法:
- 使用for
循环和in
关键字:for key in dict: print(key, dict[key])
- 使用字典的items()
方法:for key, value in dict.items(): print(key, value)
- 使用字典的keys()
方法:for key in dict.keys(): print(key, dict[key])
- 使用字典的values()
方法:for value in dict.values(): print(value)
dict1 = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'} for key in dict1: print(key, dict1[key]) # 输出:key1 value1 key2 value2 key3 value3 for key, value in dict1.items(): print(key, value) # 输出:key1 value1 key2 value2 key3 value3 for key in dict1.keys(): print(key, dict1[key]) # 输出:key1 value1 key2 value2 key3 value3 for value in dict1.values(): print(value) # 输出:value1 value2 value3