1. 遍历整个列表
magicians = ['alice', 'david', 'carolina']
for magician in magicians:
print(magician)
2. 避免缩进错误
Python根据缩进来判断代码行与前一个代码行的关系。
- 忘记缩进
- 不必要的缩进
- 遗漏了冒号
3. 创建数值列表
(1).使用函数range()
函数range() 能够轻松地生成一系列的数字,从你指定的第一个值开始数,并在到达你指定的第二个值前停止
for value in range(1,5):
print(value)
(2).使用range() 创建数字列表
要创建数字列表,可使用函数list() 将range() 的结果直接转换为列表。
numbers = list(range(1,6))
print(numbers)
使用函数range() 时,还可指定步长
even_numbers = list(range(2,11,2))
print(even_numbers)
(3).对数字列表执行简单的统计计算
>>> digits = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
>>> min(digits)
0
>>> max(digits)
9
>>> sum(digits)
45
(4).列表解析 (列表推导式)
[表达式 for 变量 in 列表] 或者 [表达式 for 变量 in 列表 if 条件]
阅读理解列表表达式的推荐做法是:先从里面的for循环开始,向右查看是否有if条件,然后向左依次执行表达式,并放在列表[ ]里。
#在for循环里,依次执行value**2的操作,并存在[]里
squares = [value**2 for value in range(1,11)]
print(squares)
4. 使用列表的一部分(切片)
处理列表的部分元素——Python称之为切片
(1).切片
要创建切片,可指定要使用的第一个元素和最后一个元素的索引,Python在到达你指定的第二个索引前面的元素后停止。
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[0:3])
如果你没有指定第一个索引,Python将自动从列表开头开始:
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[:4])
如果你没有指定最后一个索引,则切片终止于列表末尾:
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[2:])
(2).遍历切片
如果要遍历列表的部分元素,可在for 循环中使用切片。
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print("Here are the first three players on my team:")
for player in players[:3]:
print(player.title())
(3).复制列表
要复制列表,可创建一个包含整个列表的切片,方法是同时省略起始索引和终止索引([:] )
my_foods = ['pizza', 'falafel', 'carrot cake']
friend_foods = my_foods[:]
print("My favorite foods are:")
print(my_foods)
print("\nMy friend's favorite foods are:")
print(friend_foods)
倘若我们只是简单地将my_foods 赋给friend_foods ,就不能得到两个列表。
my_foods = ['pizza', 'falafel', 'carrot cake']
#这行不通
friend_foods = my_foods
my_foods.append('cannoli')
friend_foods.append('ice cream')
print("My favorite foods are:")
print(my_foods)
print("\nMy friend's favorite foods are:")
print(friend_foods)
这种语法实际上是让Python将新变量friend_foods 关联到包含在my_foods 中的列表,因此这两个变量都指向同一个列表。
5. 元组
Python将不能修改的值称为不可变的 ,而不可变的列表被称为元组。
元组看起来犹如列表,但使用圆括号而不是方括号来标识。
(1).定义元组
dimensions = (200, 50)
print(dimensions[0])
print(dimensions[1])
尝试修改元组dimensions 中的一个元素,将出错
dimensions = (200, 50)
dimensions[0] = 250 #出错
(2).遍历元组中的所有值
dimensions = (200, 50)
for dimension in dimensions:
print(dimension)
(3).修改元组变量
虽然不能修改元组的元素,但可以给存储元组的变量赋值。
dimensions = (200, 50)
print("Original dimensions:")
for dimension in dimensions:
print(dimension)
dimensions = (400, 100)
print("\nModified dimensions:")
for dimension in dimensions:
print(dimension)