python数据类型_元组、字典常用操作方法(介绍)

  • Post category:Python

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)