Python3中的字典是一种内置的数据类型,它使用键值对的形式进行数据存储,支持通过键来快速检索对应的值。其结构由键值对组成,每个键和对应的值之间用冒号(:)分隔,每对键值对之间使用逗号(,)进行分隔,整个字典则被包含在大括号({})之中。这是一种无序的、可变的数据结构,并且不允许出现重复的键。在解决实际问题时,字典的应用极其广泛,表现出了极高的实用性和效率。
以下是Python字典的一些常用操作:
创建字典:
dict1 = {'name': 'Smile', 'age':22, 'gender': 'male'}
dict2 = dict(name='Smile', age=20, gender='male')
dict3 = dict({'name': 'Smile', 'age':22, 'gender': 'male'})
print(dict1)
print(dict2)
print(dict3)
访问字典:
print(dict1['name']) # 输出:Smile
print(dict1.get('age')) # 输出:20
更新字典:
dict1['age'] = 21 # 更新age
dict1['gender'] = 'female' # 更新gender
dict1.update(name='Smile', age=22) # 更新name和age
print(dict1)
删除字典:
del dict1['name'] # 删除键为'name'的条目
dict1.clear() # 清空字典
print(dict1)
字典的键存在性:
'name' in dict1 # 输出:True
print(dict1)
字典的键值对个数:
len(dict1) # 输出:3
print(dict1)
字典的键值列表:
dict1.keys() # 输出:dict_keys(['name', 'age', 'gender'])
dict1.values() # 输出:dict_values(['Smile', 21, 'female'])
dict1.items() # 输出:dict_items([('name', 'Smile'), ('age', 21), ('gender', 'female')])
print(dict1)
字典的嵌套:
dict2 = {
'name': 'Smile',
'info': {
'age':22,
'gender': 'male'
}
}
print(dict2['info']['gender']) # 输出:male
print(dict2)
字典推导式:
numbers = [1, 3, 5, 7, 9]
squares = {num: num**2 for num in numbers}
print(squares)
输出:{1: 1, 3: 9, 5: 25, 7: 49, 9: 81}
字典的排序:
按键排序
sorted_dict = {k: dict1[k] for k in sorted(dict1)}
print(sorted_dict)
按值排序
sorteddict = {k: dict1[k] for k, in sorted(dict1.items(), key=lambda item: item[1])}
print(sorted_dict)
简要介绍了Python中字典的基础操作及应用场景,如需了解更高级的使用技巧和方法,建议查阅Python官方文档进行深入学习。
Python字典内置了多种实用函数,主要包括:1. len(dict)
: 计算字典中的元素数量,即键的数量;2. str(dict)
: 将字典转化为可打印的字符串形式展示;3. type(variable)
: 返回变量的数据类型,当变量为字典时,则返回字典类型。这些功能简化了字典的操作流程。
Python字典提供了多种内置方法:如.clear()
用于清空所有条目;.copy()
实现浅复制;.fromkeys()
可根据指定序列生成新字典;.get(key, default)
返回键值或默认值;.items()
、.keys()
与.values()
分别返回条目的视图对象;.setdefault(key, default)
获取键值并可设定默认值;.update(dict2)
合并字典;.pop(key[,default])
及.popitem()
则分别移除指定键值对或最后一个键值对并返回之。