0% found this document useful (0 votes)
15 views23 pages

Python 3

本讲义介绍了 Python 列表的基本概念,包括列表的定义、元素的访问、修改、添加和删除方法,以及如何管理列表如排序和获取长度。强调了避免索引错误的重要性,并为后续章节的学习奠定基础。

Uploaded by

zhuo10325
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views23 pages

Python 3

本讲义介绍了 Python 列表的基本概念,包括列表的定义、元素的访问、修改、添加和删除方法,以及如何管理列表如排序和获取长度。强调了避免索引错误的重要性,并为后续章节的学习奠定基础。

Uploaded by

zhuo10325
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 23

Python 编程:从入门到实践

(第三版)

Teacher Name / Email


关于本讲义
• 与《 Python 》
• 讲义中的文本及绘图采用署名-非商业性使用-相同方式共享协议(CC BY-NC-SA 4.0)进
行许可
• 引用的网络图片附有超链接,可用于访问来源
• 讨论、意见、答疑、勘误、更新:
https://github.com/scruel/pcc_3e_slides

作者: @Scruel Tao


第 3 章 列表简介
• 3.1 列表是什么
• 3.2 修改、添加和删除元素
• 3.3 管理列表
• 3.4 避免索引错误
• 3.5 小结
3.1 列表是什么
3.1 列表是什么
列表( list )由一系列按特定顺序排列的元素组成
3.1 列表是什么
列表( list )由一系列按特定顺序排列的元素组成
使用方括号来标识,用逗号分隔其中的元素,元素之间可以没有任何关系。
3.1 列表是什么
列表( list )由一系列按特定顺序排列的元素组成
使用方括号来标识,用逗号分隔其中的元素,元素之间可以没有任何关系。
建议给列表指定一个表示复数的名称(如 letters 、 digits )

bikes = ['trek', 'redline',


'giant']
print(bikes)
运行结果
['trek', 'redline', 'giant']
3.1.1 访问列表元素
• 索引( index ):元素在列表中的位置,用于访问列表中的元素

特别的火车头,
小心差一错误!
3.1.2 列表索引
• 索引( index ):元素在列表中的位置,用于访问列表中的元素
• 负数索引:表示列表中倒数第几个元素的位置
3.1.1 访问列表元素
• 索引( index ):元素在列表中的位置,用于访问列表中的元素
• 负数索引:表示列表中倒数第几个元素的位置

bikes = ['trek', 'redline',


'giant']
print(bikes[0])
print(bikes[2], bikes[-1])
运行结果
trek
giant giant
3.1.3 使用列表中的各个值
和其他变量一样,我们可以使用列表中的各个值
例如,在 f- 字符串中,我们可以根据列表中的值来创建消息:
bicycles = ['trek', 'cannondale', 'redline',
'specialized']
message = f"My first bicycle was a
{bicycles[0].title()}."
我们使用 bicycles[0] 的值(第一款自行车)生成了一个句子,并赋值给
print(message)
message ,程序的输出如下:
运行结果
My first bicycle was a Trek.
3.2.1 修改列表元素
要修改列表元素,我们需要指定列表名和要修改的元素的索引,再指定该索引位置的新值。
列如,我们可以修改摩托车列表中的第一个值:

motorcycles = ['honda', 'yamaha',


'suzuki']
print(motorcycles)
motorcycles[0] = 'ducati'
print(motorcycles)
运行结果
['honda', 'yamaha',
'suzuki']
['ducati', 'yamaha',
3.2.2 在列表中添加元素
我们随时可以在列表中添加新元素
• lst.append(val) :在列表的末尾添加新元素。

bikes = []
bikes.append('redline')
3.2.2 在列表中添加元素
我们随时可以在列表中添加新元素
• lst.append(val) :在列表的末尾添加新元素。
• lst.insert(idx, val) :在列表的指定位置上添加新元素。

bikes = []
bikes.append('redline') 运行结果
bikes.insert(0, 'trek') ['trek',
print(bikes) 'redline']
3.2.3 从列表中删除元素
我们可以删除列表中指定索引的元素
• del lst[idx] :删除列表中指定索引的元素

bikes = ['giant', 'trek',


运行结果
'redline']
['trek',
del bikes[0]
'redline']
print(bikes)
3.2.3 从列表中删除元素
我们可以删除列表中指定索引的元素
• del lst[idx] :删除列表中指定索引的元素
• lst.pop([idx]) -> val :删除并返回列表中指定索引(默认为末尾)
的元素,弹出( pop )的值能被接着使用
bikes = ['giant', 'trek', 'redline'] 运行结果
1 popped_bike = bikes.pop(0) 2 redline
2 print(bikes.pop()) 3 ['trek']
3 print(bikes) 4 giant
4 print(popped_bike)
3.2.3 从列表中删除元素
我们也可以根据值来删除列表中的元素
• lst.remove(val) :删除列表中匹配到的第一个指定元素。
motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati']
too_expensive = 'ducati'
motorcycles.remove(too_expensive)
print(motorcycles)
print(f"\nA {too_expensive.title()} is too expensive for
me.")
运行结果
['honda', 'yamaha', 'suzuki']

A Ducati is too expensive for me.


3.3 管理列表:排序
我们可以通过下面的方法 / 函数来对列表排序
• lst.sort() :永久修改原列表,对其中的元素进行排序。
• sorted(lst) -> lst' :返回排序后的列表的副本。
nums = [9, 6, 1, 4, 2]
1 print(sorted(nums))
2 print(nums) # 原列表不变 运行结果
# 列表排序(默认正序) 1 [1, 2, 4, 6,
3 nums.sort() 2 9]
print(nums) 3 [9, 6, 1, 4,
# 列表排序(指定倒序) 4 2]
4 nums.sort(reverse=True) [1, 2, 4, 6,
print(nums) 9]
3.3 管理列表:反转
我们可以通过下面的方法来反转列表
• lst.reverse() :永久修改原列表,对其中的元素进行翻转。

nums = [9, 6, 1, 4, 2]
运行结果
nums.reverse() # 翻转列表
[2, 4, 1, 6,
print(nums)
9]

reverse() 方法会永久地修改列表元素的排列顺序,但可随时恢复到原来的排列顺序:只需对列表再次调
用 reverse() 即可。
3.3 管理列表:获取长度
使用 len() 函数可以快速获悉列表的长度:
• len(lst) -> num :获取列表的元素个数。

cars = ['bmw', 'audi', 'toyota', 运行结果


'subaru'] 4
print(len(cars))

这个函数很有用,可以帮助我们明确还有多少个外星人未被消灭,确定需要管理多少项可视化
数据,计算网站有多少注册用户,等等。
3.3 管理列表:获取长度
小技巧:终端中会自动对输入的最后一行调用 print() 函数,所以如果你是在终端中尝试运行,可
以省略最后的 print() 函数:
3.4 避免索引错误
小心索引错误!——列表的索引是从 0 开始的,而不是从 1 开始。
motorcycles = ['honda', 'yamaha',
'suzuki']
print(motorcycles[3])
运行结果
Traceback (most recent call last):
File "motorcycles.py", line 2, in
<module>
print(motorcycles[3])
~~~~~~~~~~~^^^
IndexError: list index out of range
不要大意,索引错误很常见,尤其是差一错误!
3.5 小结
• 学习了列表是什么,以及如何使用其中的元素。
• 学习了如何定义列表,如何增删元素,以及如何对列表进行永久排序和临时排序。
• 学习了如何获得列表的长度,以及如何在使用列表时避免索引错误。

在下一章中,我们将学习更多关于列表的相关知识,尤其是如何以更高效的方式处理列表元素。

You might also like