5. Python 数据容器(list 列表、tuple 元组、str 字符串、set 集合、dict(字典)、序列切片)

Python 是一门高效且灵活的编程语言,其数据结构丰富,能够处理多种类型的数据。本文将详细介绍 Python 中的基本数据容器,包括列表(list)、元组(tuple)、字符串(str)、集合(set)、字典(dict)以及序列切片,并通过案例与场景进行说明。

目录

  1. 列表(List)
    • 1.1 定义
    • 1.2 创建列表
    • 1.3 列表操作
    • 1.4 列表应用场景
  2. 元组(Tuple)
    • 2.1 定义
    • 2.2 创建元组
    • 2.3 元组操作
    • 2.4 元组应用场景
  3. 字符串(String)
    • 3.1 定义
    • 3.2 创建字符串
    • 3.3 字符串操作
    • 3.4 字符串应用场景
  4. 集合(Set)
    • 4.1 定义
    • 4.2 创建集合
    • 4.3 集合操作
    • 4.4 集合应用场景
  5. 字典(Dict)
    • 5.1 定义
    • 5.2 创建字典
    • 5.3 字典操作
    • 5.4 字典应用场景
  6. 序列切片
    • 6.1 切片定义
    • 6.2 切片操作
    • 6.3 切片应用场景
  7. 总结

1. 列表(List)

1.1 定义

列表是 Python 中最常用的数据容器之一,可以存储多个项目。列表是可变的,这意味着可以随时更改其内容。

1.2 创建列表

pythonCopy Code
# 创建一个空列表 empty_list = [] # 创建一个包含元素的列表 fruits = ["apple", "banana", "cherry"]

1.3 列表操作

  • 添加元素
pythonCopy Code
fruits.append("orange") # 在列表末尾添加元素
  • 插入元素
pythonCopy Code
fruits.insert(1, "kiwi") # 在索引1处插入元素
  • 删除元素
pythonCopy Code
fruits.remove("banana") # 删除指定元素
  • 访问元素
pythonCopy Code
first_fruit = fruits[0] # 访问第一个元素

1.4 列表应用场景

列表非常适合用于存储具有相同类型的多个数据,例如:

  • 存储用户输入的购物清单
  • 记录学生的分数

示例:购物清单

pythonCopy Code
shopping_list = ["milk", "eggs", "bread"] shopping_list.append("butter") print(shopping_list) # 输出: ['milk', 'eggs', 'bread', 'butter']

2. 元组(Tuple)

2.1 定义

元组是一个不可变的序列,一旦创建就不能更改。这使得元组在某些情况下比列表更安全。

2.2 创建元组

pythonCopy Code
# 创建一个空元组 empty_tuple = () # 创建一个包含元素的元组 coordinates = (10.0, 20.0)

2.3 元组操作

  • 访问元素
pythonCopy Code
x = coordinates[0] # 访问第一个元素
  • 连接元组
pythonCopy Code
new_coordinates = coordinates + (30.0, 40.0) # 连接两个元组

2.4 元组应用场景

元组适合用于存储不需改变的数据,例如:

  • 存储坐标点
  • 存储常量值

示例:坐标点

pythonCopy Code
point = (3, 4) print(f"Point coordinates: {point}") # 输出: Point coordinates: (3, 4)

3. 字符串(String)

3.1 定义

字符串是字符的序列,用于表示文本数据。字符串是不可变的,即一旦创建,就不能更改。

3.2 创建字符串

pythonCopy Code
# 创建字符串 greeting = "Hello, World!"

3.3 字符串操作

  • 连接字符串
pythonCopy Code
name = "Alice" welcome_message = greeting + " " + name
  • 切片
pythonCopy Code
first_word = greeting[0:5] # 切片获取前五个字符

3.4 字符串应用场景

字符串通常用于处理文本数据,例如:

  • 用户输入的姓名
  • 文章的标题

示例:用户问候

pythonCopy Code
username = input("Enter your name: ") print(f"Hello, {username}!") # 输出: Hello, Alice!

4. 集合(Set)

4.1 定义

集合是一种无序且不重复的元素集合,主要用于去重和集合运算。

4.2 创建集合

pythonCopy Code
# 创建一个空集合 empty_set = set() # 创建一个包含元素的集合 fruits_set = {"apple", "banana", "cherry"}

4.3 集合操作

  • 添加元素
pythonCopy Code
fruits_set.add("orange") # 添加新元素
  • 删除元素
pythonCopy Code
fruits_set.remove("banana") # 删除指定元素
  • 集合运算
pythonCopy Code
another_set = {"banana", "grape"} union_set = fruits_set.union(another_set) # 联合

4.4 集合应用场景

集合适合用于需要去重或进行数学集合运算的场景,例如:

  • 检查用户输入的唯一性
  • 处理数据集中的重复项

示例:用户输入去重

pythonCopy Code
user_input = ["apple", "banana", "apple", "orange"] unique_fruits = set(user_input) print(unique_fruits) # 输出: {'banana', 'orange', 'apple'}

5. 字典(Dict)

5.1 定义

字典是一种键值对的无序集合,可以快速查找、插入和删除数据。

5.2 创建字典

pythonCopy Code
# 创建一个空字典 empty_dict = {} # 创建一个包含元素的字典 person = {"name": "Alice", "age": 25}

5.3 字典操作

  • 添加键值对
pythonCopy Code
person["city"] = "New York" # 添加新键值对
  • 访问值
pythonCopy Code
name = person["name"] # 获取名称
  • 删除键值对
pythonCopy Code
del person["age"] # 删除指定键

5.4 字典应用场景

字典适合用于需要关联数据的场景,例如:

  • 存储个人信息
  • 配置设置

示例:个人信息存储

pythonCopy Code
user_info = { "username": "Alice", "email": "alice@example.com" } print(user_info["email"]) # 输出: alice@example.com

6. 序列切片

6.1 切片定义

切片是从序列中提取子序列的一种方式,支持列表、元组和字符串等数据结构。

6.2 切片操作

  • 基本切片
pythonCopy Code
numbers = [0, 1, 2, 3, 4, 5] slice_numbers = numbers[1:4] # 获取索引1到3的元素
  • 步长切片
pythonCopy Code
even_numbers = numbers[::2] # 获取所有偶数索引的元素

6.3 切片应用场景

切片常用于处理数据集或提取特定部分的需求,例如:

  • 提取列表中的特定元素
  • 分割字符串

示例:提取偶数

pythonCopy Code
numbers = [0, 1, 2, 3, 4, 5] even_numbers = numbers[::2] print(even_numbers) # 输出: [0, 2, 4]

7. 总结

Python 提供了多种强大的数据容器,每种容器都有其独特的特性和适用场景。了解这些数据容器及其操作能够大大提高编写高效代码的能力。在实际开发中,选择合适的数据容器可以帮助我们更好地管理和处理数据。

希望本文能够帮助你更深入地理解 Python 的数据容器,并在实际项目中得心应手。