Python入门第4课:核心数据结构详解,列表、元组、字典与集合

Python入门第4课:核心数据结构详解,列表、元组、字典与集合

作者: 蛋皮
标签: Python, 数据结构, 列表, 元组, 字典, 集合

在掌握了Python的变量、基础语法、条件判断和循环之后,你已经具备了编写简单程序的能力。但要处理更复杂的数据,仅仅使用单一的变量或简单的循环是远远不够的。Python为我们提供了四种极其强大且常用的核心数据结构:列表 (List)元组 (Tuple)字典 (Dictionary)集合 (Set)。它们是组织、存储和操作数据的利器。今天,我们将深入剖析这四种数据结构,理解它们的特性、用法和适用场景。


为什么需要数据结构?

想象一下,你要管理一个班级的学生信息。如果为每个学生都创建一个单独的变量(student1, student2, …),不仅繁琐,而且无法进行批量操作(比如找出所有及格的学生)。数据结构就是为了解决这类问题而生的——它们允许我们将多个相关的数据项组织在一起,作为一个整体来处理。


1. 列表 (List):有序的可变序列

列表是Python中最常用、最灵活的数据结构。你可以把它想象成一个有序的、可变的“购物清单”

核心特性

  • 有序 (Ordered): 列表中的元素有确定的顺序,可以通过索引(位置)来访问。
  • 可变 (Mutable): 创建后,可以修改列表的内容(添加、删除、修改元素)。
  • 允许重复: 列表中可以包含相同的元素。
  • 异构性: 列表可以包含不同类型的数据。

创建列表

使用方括号 [],元素之间用逗号 , 分隔。

# 创建空列表
empty_list = []

# 创建包含元素的列表
fruits = ["苹果", "香蕉", "橙子"]
numbers = [1, 2, 3, 4, 5]
mixed_list = ["Alice", 25, True, 3.14]  # 混合类型

访问元素(索引)

列表的索引从 0 开始。

fruits = ["苹果", "香蕉", "橙子", "葡萄"]

print(fruits[0])      # 输出: 苹果 (第一个元素)
print(fruits[2])      # 输出: 橙子
print(fruits[-1])     # 输出: 葡萄 (负索引,倒数第一个)
print(fruits[-2])     # 输出: 橙子 (倒数第二个)

常用操作

  • 修改元素:

    fruits[1] = "芒果"
    print(fruits)  # ['苹果', '芒果', '橙子', '葡萄']
    
  • 添加元素:

    fruits.append("草莓")        # 在末尾添加
    print(fruits)               # ['苹果', '芒果', '橙子', '葡萄', '草莓']
    
    fruits.insert(1, "梨")      # 在索引1处插入
    print(fruits)               # ['苹果', '梨', '芒果', '橙子', '葡萄', '草莓']
    
  • 删除元素:

    fruits.remove("橙子")       # 删除第一个匹配的元素
    popped_fruit = fruits.pop() # 删除并返回最后一个元素
    print(popped_fruit)         # 草莓
    del fruits[0]               # 删除索引0的元素
    print(fruits)               # ['梨', '芒果', '葡萄']
    
  • 查找元素:

    if "香蕉" in fruits:
        print("列表中有香蕉")
    else:
        print("列表中没有香蕉")  # 会输出这句
    
    index = fruits.index("芒果") # 找到元素的索引
    print(index)                # 1
    
  • 遍历列表:

    for fruit in fruits:
        print(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值