Part 3 操作列表
1 for 循环
在一个个打印列表时,如果名单很长,将包含大量重复的代码;另外,每当名单的长度发生变化时,都必须修改代码。因此可以使用for 循环来直接打印所有名字。
>>> magicians = ['alice', 'david', 'carolina']
>>> for magician in magicians:
print(magician)
alice
david
carolina
下面简单解读一下for 循环每条语句的涵义:
- 第二行代码让Python获取列表magicians 中的第一个值’ alice ’ ,并将其与变量magician 相关联;
- 接下来打印magician 的值,并返回第二行继续获取列表的第二个值’ david ';
- 继续执行第2步,直至获取玩列表magicians 的最后一个值。
tips:使用单数和复数式名称,可帮助判断代码段处理的是单个列表元素还是整个列表。
==注意:==在使用for 循环时注意列表缩进,在for循环语句后需要加“:”
补充:for-else语句
for 临时变量 in 序列:
重复执行的代码
......
else:
循环正常结束后要执行的代码
举例说明:
num = [1, 2, 3, 4]
for i in num:
print(i)
else:
sum(1,2,3,4)
# 结果如下
1
2
3
4
结束
随堂练习
练习 3-1 比萨
想出至少三种你喜欢的比萨,将其名称存储在一个列表中,再使用for 循环将每种比萨的名称打印出来。
>>> pizzas = ['cheese pizza', 'pepperoni pizza', 'Chicago-Style Pizza']
>>> for pizza in pizzas:
print(pizza)
cheese pizza
pepperoni pizza
Chicago-Style Pizza
修改这个for 循环,使其打印包含比萨名称的句子,而不仅仅是比萨的名称。对于每种比萨,都显示一行输出。并在程序末尾添加“ I really love pizza! ”的句子。
>>> pizzas = ['cheese pizza', 'pepperoni pizza', 'Chicago-Style Pizza']
>>> for pizza in pizzas:
print(f'I like eatting {
pizza} !')
>>> print("I really love pizza!")
I like eatting cheese pizza !
I like eatting pepperoni pizza !
I like eatting Chicago-Style Pizza !
I really love pizza!
练习 3-2 动物
想出至少三种有共同特征的动物,将其名称存储在一个列表中,再使用for 循环将每种动物的名称打印出来。
答案:同练习 3-1。略。
2 创建数值列表
2.1 range( )函数
Python函数range() 能够轻松地生成一系列数。用法如下:
range( number )可以生成从 0 到 number-1 的序列
range(a, b)可以生成从 a 到 b-1 的数字序列
range(a, b, c)可以生成步长为b,从 a 到 c-1 的数字序列
>>> for value in range(1, 5):
print(value)
1
2
3
4
2.2 list( )函数
可使用函数list( ) 将range( ) 的结果直接转换为列表。
>>> list(range(3, 2, 6))
[3, 5]
2.3 对数值列表进行简单统计计算
有几个专门用于处理数字列表的Python函数。例如:
>>> digits = [</