python字典的学习

字典的基本概念

字典是Python中一种可变容器模型,可存储任意类型对象。字典的每个键值对用冒号:分割,键值对之间用逗号,分割,整个字典包括在花括号{}中。

字典的特点:

  • 键必须是唯一的,且不可变(如字符串、数字或元组)。
  • 值可以取任何数据类型。
  • 字典是无序的(Python 3.7+中字典会保持插入顺序,但不应依赖此特性)。

创建字典

通过花括号{}dict()函数创建字典:

# 直接创建
my_dict = {'name': 'Alice', 'age': 25, 'city': 'New York'}

# 使用dict()函数
my_dict = dict(name='Alice', age=25, city='New York')

# 空字典
empty_dict = {}

访问字典元素

通过键访问对应的值:

print(my_dict['name'])  # 输出: Alice

# 使用get()方法避免KeyError
print(my_dict.get('age'))  # 输出: 25
print(my_dict.get('country', 'USA'))  # 键不存在时返回默认值'USA'

修改字典

更新现有键的值或添加新键值对:

my_dict['age'] = 26  # 更新
my_dict['country'] = 'USA'  # 添加

删除元素

使用del语句或pop()方法:

del my_dict['city']  # 删除键'city'
age = my_dict.pop('age')  # 删除并返回'age'的值
my_dict.clear()  # 清空字典

字典常用方法

  • keys(): 返回所有键
  • values(): 返回所有值
  • items(): 返回所有键值对
  • update(): 合并字典
print(my_dict.keys())  # 输出: dict_keys(['name', 'age', 'city'])
print(my_dict.values())  # 输出: dict_values(['Alice', 25, 'New York'])

# 遍历字典
for key, value in my_dict.items():
    print(f"{key}: {value}")

# 合并字典
new_data = {'job': 'Engineer', 'salary': 80000}
my_dict.update(new_data)

字典推导式

类似列表推导式,可以快速创建字典:

squares = {x: x*x for x in range(6)}
# 输出: {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25}

嵌套字典

字典可以包含其他字典,实现复杂数据结构:

employees = {
    'emp1': {'name': 'John', 'age': 32},
    'emp2': {'name': 'Mary', 'age': 28}
}
print(employees['emp1']['name'])  # 输出: John

注意事项

  • 避免在遍历字典时修改其大小(增删元素),否则可能引发异常。
  • 字典键必须是不可变类型,列表等可变类型不能作为键。
  • Python 3.7+中字典会保持插入顺序,但代码不应依赖此特性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值