python如何调用字典的key

什么是字典

在Python中,字典(dictionary)是一种可变容器模型,它可以存储任意数量的Python对象,且不同于Python中的序列(如列表和元组),字典中的每个元素都是通过键来访问的。

字典的形式类似于JavaScript中的对象和PHP中的关联数组。在字典中,键和值之间用冒号分隔,不同的键和值对之间用逗号分隔,最后用大括号括起来。

创建字典

可以通过以下方式来创建字典:

# 创建空字典

dict1 = {}

# 用大括号和冒号的形式创建字典

dict2 = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}

# 用dict函数创建字典

dict3 = dict(key1='value1', key2='value2', key3='value3')

# 用列表和元组创建字典

keys = ['key1', 'key2', 'key3']

values = ['value1', 'value2', 'value3']

dict4 = dict(zip(keys, values))

如何调用字典的key

在Python中,可以使用字典的键来访问字典中的值。有两种方式来访问字典中的键:

使用方括号[]来访问:

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

# 方式一:用方括号[]来访问

value1 = dict['key1']

value2 = dict['key2']

value3 = dict['key3']

print(value1) # 输出:value1

print(value2) # 输出:value2

print(value3) # 输出:value3

使用get()函数来访问:

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

# 方式二:用get()函数来访问

value1 = dict.get('key1')

value2 = dict.get('key2')

value3 = dict.get('key3')

print(value1) # 输出:value1

print(value2) # 输出:value2

print(value3) # 输出:value3

使用get()函数时,如何处理key不存在的情况

如果使用get()函数时,指定的key不存在于字典中,get()函数会返回None。例如:

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

value4 = dict.get('key4')

print(value4) # 输出:None

# 如果想指定key不存在时返回的默认值,可以在get()函数中传入第二个参数

value4 = dict.get('key4', 'default_value')

print(value4) # 输出:'default_value'

使用in关键字判断key是否存在

在Python中,可以使用in关键字来判断一个key是否存在于一个字典中:

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

# 判断key是否存在

if 'key1' in dict:

print('key1存在')

else:

print('key1不存在')

if 'key4' in dict:

print('key4存在')

else:

print('key4不存在')

使用keys()函数获取所有的key

可以使用keys()函数来获取一个字典中所有的key:

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

keys = dict.keys()

print(keys) # 输出:dict_keys(['key1', 'key2', 'key3'])

keys()函数返回的是一个dict_keys类型的字典视图对象,它可以像列表一样迭代,但是不能像列表一样进行切片操作,可以通过list()函数将其转为列表。

使用values()函数获取所有的value

可以使用values()函数来获取一个字典中所有的value:

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

values = dict.values()

print(values) # 输出:dict_values(['value1', 'value2', 'value3'])

values()函数返回的是一个dict_values类型的字典视图对象,它可以像列表一样迭代,但是不能像列表一样进行切片操作,可以通过list()函数将其转为列表。

使用items()函数获取所有的键值对

可以使用items()函数来获取一个字典中所有的键值对:

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

items = dict.items()

print(items) # 输出:dict_items([('key1', 'value1'), ('key2', 'value2'), ('key3', 'value3')])

items()函数返回的是一个dict_items类型的字典视图对象,它可以像列表一样迭代,但是不能像列表一样进行切片操作,可以通过list()函数将其转为列表。

使用pop()函数弹出指定的key和value

可以使用pop()函数来弹出指定的key及其对应的value:

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

value1 = dict.pop('key1')

print(value1) # 输出:'value1'

print(dict) # 输出:{'key2': 'value2', 'key3': 'value3'}

如果指定的key不存在,则pop()函数会抛出一个KeyError异常。

使用popitem()函数弹出一个随机的键值对

可以使用popitem()函数来弹出一个随机的键值对:

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

item = dict.popitem()

print(item) # 输出:('key3', 'value3')

print(dict) # 输出:{'key1': 'value1', 'key2': 'value2'}

popitem()函数会从字典中随机弹出一个键值对,并将其作为元组返回。如果字典为空,则popitem()函数会抛出一个KeyError异常。

使用clear()函数清空字典

可以使用clear()函数来清空一个字典:

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

dict.clear()

print(dict) # 输出:{}

clear()函数将会删除字典中所有的键值对,使得字典变为空字典。

总结

在Python中,可以使用方括号[]或者get()函数来访问字典中指定key的value,使用in关键字来判断key是否存在,通过keys()、values()、items()函数分别获取字典中所有的key、value、键值对,通过pop()、popitem()函数来弹出指定的key和value或者一个随机的键值对,使用clear()函数可以清空整个字典。

后端开发标签