Python数据类型:元组、字典常用操作方法
Python是一种面向对象、解释型的高级动态程序语言,数据类型丰富,包括元组和字典。本文将针对元组和字典这两种数据类型,介绍其常见的操作方法。
元组
元组是Python中的一种序列类型,与列表类似,但元组是不可变的,不能对其进行修改。元组的定义方式为用小括号括起来的一个元素序列。
创建元组
可以用小括号或者tuple()函数来创建空元组。例如:
# 创建空元组
t = ()
t = tuple()
也可以不使用括号,写成逗号分隔的一系列值,并自动将其转换为元组。例如:
# 创建有值的元组
t = 1, 2, 3
t = (1, 2, 3) # 和上一句等价
访问元组
元组中的元素可以通过下标进行访问,下标从0开始。例如:
t = (1, 2, 3)
print(t[0]) # 输出 1
print(t[1]) # 输出 2
修改元组
由于元组是不可变的,无法修改,但是可以通过重新定义一个新元组来实现部分修改的效果。例如:
# 定义一个新元组,覆盖原来的元素
t = (1, 2, 3)
t = (4, *t[1:]) # 替换第一个元素
print(t) # 输出 (4, 2, 3)
# 或者使用元组切片并转换为新元组
t = (1, 2, 3)
t = t[:1] + (4,) + t[2:]
print(t) # 输出 (4, 2, 3)
# 当然,也可以使用列表来实现元组的部分修改
t = list(t)
t[0] = 4
t = tuple(t)
print(t) # 输出 (4, 2, 3)
字典
字典是Python中的一种映射类型,也是一种可变容器,可以存储键值对。字典中的键唯一,值可以重复。字典的定义方式为用大括号括起来的一系列键值对。
创建字典
可以用大括号或者dict()函数来创建空字典。例如:
# 创建空字典
d = {}
d = dict()
要创建有值的字典只需要将键值对用逗号分隔开,并用大括号括起来。例如:
# 创建有值的字典
d = {'one': 1, 'two': 2, 'three': 3}
d = dict(one=1, two=2, three=3)
访问字典
可以使用键值对法访问字典中的值,键值对中的键是唯一的,不允许重复。例如:
d = {'one': 1, 'two': 2, 'three': 3}
print(d['one']) # 输出 1
print(d['two']) # 输出 2
修改字典
字典是可变的容器,可通过索引(键)对其进行修改。例如:
d = {'one': 1, 'two': 2, 'three': 3}
d['one'] = 4
print(d) # 输出 {'one': 4, 'two': 2, 'three': 3}
删除字典
字典可以用del关键字删除,删除操作会将整个字典都删掉,直接删除某个键字可以使用pop方法。例如:
d = {'one': 1, 'two': 2, 'three': 3}
del d
字典的遍历
可以使用for循环遍历字典中的键值对。例如:
d = {'one': 1, 'two': 2, 'three': 3}
for key, value in d.items():
print(key, value)
示例说明
元组示例
假设我们有一家店,我们要对产品的名称、价格与库存量进行记录,可以使用元组来管理这些信息。例如:
products = [('apple', 10, 100), ('banana', 5, 200), ('watermelon', 20, 50)]
# 输出所有产品
for name, price, count in products:
print(name, price, count)
# 修改第一个产品的价格
products[0] = ('apple', 8, 1000)
print(products[0]) # 输出 ('apple', 8, 1000)
字典示例
我们可以使用字典记录一个人的基本信息,例如姓名、年龄、性别、电话等等。例如:
person = {'name': 'Tom', 'age': 20, 'sex': 'male', 'phone': '13888888888'}
# 输出年龄
print(person['age']) # 输出 20
# 修改电话
person['phone'] = '13999999999'
print(person['phone']) # 输出 13999999999
# 遍历字典
for key, value in person.items():
print(key, value)