Python 列表(List)零基础全教程:从入门到精通

简介: Python列表参考来源:http://dnuhf.cn是有序、可变、可重复的基础数据结构,支持增删改查、切片、排序、遍历及推导式等核心操作。本教程从零讲起,配可运行代码,涵盖语法、实战技巧与避坑指南,新手也能快速掌握!

列表(List)是 Python 中最常用、最重要、最基础的数据结构,没有之一。它就像一个万能收纳盒,可以存放任意类型的数据(数字、文字、列表、字典等),支持增、删、改、查所有操作,是编程必备的核心工具。
本教程从零开始,用最简单的语言 + 可直接运行的代码,带你全面掌握 Python 列表,涵盖基础语法、常用操作、实战技巧、避坑指南,新手也能轻松学会。
一、列表是什么?

  1. 定义
    列表是有序、可变、可重复的集合,用方括号 [] 表示,元素之间用逗号分隔。
    有序:元素有固定顺序,可通过位置(索引)获取;
    可变:可随时添加、删除、修改元素;
    可重复:允许存放相同值的元素。
  2. 为什么要用列表?
    统一管理多个数据(如学生名单、商品列表、成绩数据);
    支持灵活操作,适配绝大多数数据存储场景;
    语法简单,易学易用,是 Python 入门必学数据结构。
  3. 快速示例
    python
    运行

    空列表

    empty_list = []

存储不同类型数据:数字、字符串、布尔值

mix_list = [10, "Python", True, 3.14]

存储列表(嵌套列表)

nest_list = [[1,2], [3,4], [5,6]]
二、列表基础操作(必学核心)

  1. 创建列表
    直接用方括号包裹元素即可,语法最简单:
    python
    运行

    数字列表

    nums = [1, 2, 3, 4, 5]

字符串列表

names = ["小明", "小红", "小刚"]

混合列表

data = [100, "测试", False, [1,2]]

  1. 访问元素(查)
    列表是有序的,每个元素对应一个索引(从 0 开始编号),通过索引可直接获取元素。
    python
    运行
    fruits = ["苹果", "香蕉", "橙子", "葡萄"]

获取第1个元素(索引0)

print(fruits[0]) # 输出:苹果

获取第3个元素(索引2)

print(fruits[2]) # 输出:橙子

负索引:倒数第1个(-1)、倒数第2个(-2)

print(fruits[-1]) # 输出:葡萄

  1. 修改元素(改)
    列表是可变的,直接通过索引赋值即可修改元素:
    python
    运行
    fruits = ["苹果", "香蕉", "橙子"]
    fruits[1] = "芒果" # 把索引1的元素改为芒果
    print(fruits) # 输出:['苹果', '芒果', '橙子']
  2. 切片:截取子列表
    用 [起始索引:结束索引] 截取一部分元素,包含起始,不包含结束:
    python
    运行
    nums = [0,1,2,3,4,5,6]

索引1到4(不含4)

print(nums[1:4]) # [1,2,3]

从头开始到索引3

print(nums[:3]) # [0,1,2]

从索引3到末尾

print(nums[3:]) # [3,4,5,6]

步长为2,隔一个取一个

print(nums[::2]) # [0,2,4,6]
三、列表高级操作:增、删、排序、统计
这部分是列表最常用功能,工作中高频使用。

  1. 添加元素(增)
    3 种常用添加方式,适配不同场景:
    python
    运行
    fruits = ["苹果", "香蕉"]

1. append():末尾添加1个元素

fruits.append("橙子")
print(fruits) # ['苹果', '香蕉', '橙子']

2. extend():末尾添加多个元素

fruits.extend(["葡萄", "芒果"])
print(fruits) # ['苹果', '香蕉', '橙子', '葡萄', '芒果']

3. insert():指定位置插入元素(索引,值)

fruits.insert(1, "西瓜")
print(fruits) # ['苹果', '西瓜', '香蕉', '橙子', '葡萄', '芒果']

  1. 删除元素(删)
    4 种删除方式,按需选择:
    python
    运行
    fruits = ["苹果", "香蕉", "橙子", "葡萄", "香蕉"]

1. del:按索引删除

del fruits[1]
print(fruits) # ['苹果', '橙子', '葡萄', '香蕉']

2. pop():按索引删除(默认删最后一个),并返回被删元素

last = fruits.pop()
print(last) # 香蕉
print(fruits) # ['苹果', '橙子', '葡萄']

3. remove():按值删除(删除第一个匹配项)

fruits.remove("橙子")
print(fruits) # ['苹果', '葡萄']

4. clear():清空列表

fruits.clear()
print(fruits) # []

  1. 排序与反转
    python
    运行
    nums = [3,1,4,2,5]

1. sort():原地升序排序

nums.sort()
print(nums) # [1,2,3,4,5]

2. sort(reverse=True):原地降序排序

nums.sort(reverse=True)
print(nums) # [5,4,3,2,1]

3. reverse():反转列表

nums.reverse()
print(nums) # [1,2,3,4,5]

  1. 统计与查找
    python
    运行
    nums = [1,2,3,2,2,4]

1. len():获取元素个数

print(len(nums)) # 6

2. count():统计元素出现次数

print(nums.count(2)) # 3

3. index():查找元素第一次出现的索引

print(nums.index(2)) # 1

4. in:判断元素是否存在

print(3 in nums) # True
print(6 in nums) # False
四、列表遍历:循环读取所有元素
列表最常用的操作就是遍历,用 for 循环轻松实现:
python
运行
fruits = ["苹果", "香蕉", "橙子"]

方式1:直接遍历元素(最简单)

for fruit in fruits:
print("我喜欢:", fruit)

方式2:遍历索引+元素(需要位置时用)

for i, fruit in enumerate(fruits):
print(f"索引{i}:{fruit}")
五、列表推导式:一行代码生成列表
列表推导式是 Python 简洁高效的语法,一行代码完成循环 + 判断,新手必学。

  1. 基础用法
    python
    运行

    生成 0-4 的列表

    nums = [i for i in range(5)]
    print(nums) # [0,1,2,3,4]

生成 0-10 的偶数列表

even_nums = [i for i in range(11) if i % 2 == 0]
print(even_nums) # [0,2,4,6,8,10]

  1. 实用场景
    python
    运行

    把所有名字转为大写

    names = ["tom", "jerry", "alice"]
    upper_names = [name.upper() for name in names]
    print(upper_names) # ['TOM', 'JERRY', 'ALICE']
    六、嵌套列表:列表里放列表
    列表支持多层嵌套,适合存储表格、矩阵等复杂数据:
    python
    运行

    3行2列的矩阵

    matrix = [[1,2], [3,4], [5,6]]

获取第2行第1列元素

print(matrix[1][0]) # 3

遍历嵌套列表

for row in matrix:
for num in row:
print(num, end=" ")
print()
七、列表常用函数总结
表格
函数 / 方法 功能
len(list) 获取列表长度
list.append(x) 末尾添加元素
list.insert(i,x) 指定位置插入
list.remove(x) 删除第一个匹配值
list.pop(i) 按索引删除
list.clear() 清空列表
list.sort() 排序
list.reverse() 反转
list.count(x) 统计元素次数
list.index(x) 查找元素索引
八、新手避坑指南(必看)
索引越界报错:访问不存在的索引会崩溃,如列表有 3 个元素,却访问 list[5];
remove () 删不存在的元素:会直接报错,先用 in 判断是否存在;
循环时删除元素:会导致漏删、报错,建议倒序遍历或新建列表;
列表赋值是引用:a = [1,2],b = a,修改 b 会同时修改 a,复制用 b = a.copy();
不要用列表做固定数据:不可变数据用元组 (),列表是可变的。
九、总结
Python 列表是编程的基础核心,掌握它就能处理 80% 的日常数据任务:
语法:用 [] 创建,有序、可变、可重复;
核心操作:增(append/insert)、删(del/pop)、改、查、遍历、排序;
高级技巧:切片、列表推导式、嵌套列表;
适用场景:存储任意有序数据,是 Python 最万能的数据结构。
把本教程的代码亲手运行一遍,你就能完全掌握 Python 列表,轻松应对后续编程学习!
参考:http://www.dnuhf.cn

相关文章
|
Python
python、十六进制的颜色对照表
英文代码  形像颜色  HEX格式  RGB格式 LightPink 浅粉色 #FFB6C1 255,182,193 Pink 粉红 #FFC0CB 255,192,203 Crimson 猩红 #DC143C 220,20,60 LavenderBlush 脸红的淡紫色 #FFF0F5 255.
9501 0
python、十六进制的颜色对照表
|
Docker 容器
windows10 docker D盘部署最终解决方案
docker D盘部署最终解决方案
3548 0
windows10 docker D盘部署最终解决方案
|
JavaScript 前端开发 Dubbo
注册中心设计 Ap 与 CP 区别|学习笔记
快速学习注册中心设计 Ap 与 CP 区别
1332 0
注册中心设计 Ap 与 CP 区别|学习笔记
|
安全 前端开发 JavaScript
Java精品视频全套资源汇总,自学Java人手一套!
发现有很多粉丝是学java的,为了大家能够快速成长,所以我今天精心挑选了一些java相关的视频资源分享给大家,大家一定好好利用起来,这些技术学会之后,进大厂指日可待,加油。
7164 0
|
1月前
|
人工智能 监控 机器人
阿里云/本地部署OpenClaw(Clawdbot)AI助手集成飞书+API调用不设限指南!
“API调用超额”曾是OpenClaw(前身为Clawdbot、Moltbot)用户的高频痛点——飞书API此前的配额限制,让需要高频触发任务、24小时运行的用户束手束脚,只能刻意减少交互频率,严重影响使用体验。而2026年飞书开放平台的重大更新,彻底解决了这一问题:全面放开API调用上限,取消配额限制,无需申请流程、零门槛免费使用,让OpenClaw几乎可以无限调用飞书API。
1878 1
|
存储 NoSQL Java
分布式锁中的王者方案 - Redission
分布式锁中的王者方案 - Redission
279 1
|
10月前
|
存储 Java 数据库
银行流水生成器在线制作,银行转账p图在线生成,java实现最牛的生成器【仅供学习用途】
本示例展示了一个基于Java的银行交易记录管理系统基础架构,涵盖交易记录生成、数字签名加密及账本存储功能。核心内容包括:1) TransactionRecord类
|
存储 监控 NoSQL
MongoDB的应用场景非常广泛
MongoDB的应用场景非常广泛
724 6
|
机器学习/深度学习 人工智能 算法
AI伦理边界:当机器决策超越人类认知
【9月更文挑战第5天】AI伦理边界的探索是一个复杂而艰巨的任务,需要政府、企业、学术界和社会各界的共同努力。随着AI技术的不断发展,我们有理由相信,通过不断的探索和实践,我们一定能够找到一条既符合伦理道德又能够充分发挥AI技术潜力的道路。在未来的日子里,让我们携手并进,共同迎接AI技术带来的机遇与挑战。
|
运维 监控 数据可视化
大白话详解Spring Cloud服务降级与熔断
Hystrix断路器概述 1.1 分布式系统面临的问题 复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地失败。这就造成有可能会发生 服务雪崩 。那么什么是服务雪崩呢? 多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其他的微服务,这就是所谓的“ 扇出 ”(像一把打开的折扇)。如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,这就是所谓的” 雪崩效应 “。也就是系统的 高可用 受到了破坏。

热门文章

最新文章