操作列表
遍历整个列表
python中使用for循环遍历整个列表。在循环中也可以对每个元素执行任何的相应操作。
magicians = ['alice', 'david', 'carolina']
for magician in magicians:
print(magician)
>>alice
david
carolina
创建数值列表
python中可使用方法range()能生成一系列的数字。函数range() 让Python从指定的第一个值开始数,并在到达指定的第二个值后停止,
for value in range(1,5):
print(value)
>>1
2
3
4
要创建数字列表,可使用函数list()将range()的结果直接转换为列表。使用函数range() 时,还可指定步长。
numbers = list(range(1,6))
print(numbers)
>>[1, 2, 3, 4, 5]
even_numbers = list(range(2,11,2))
print(even_numbers)
>>[2, 4, 6, 8, 10]
对数字列表进行简单的统计计算
min()和max()方法可以快速的找到数字列表的最小值和最大值。
digits = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
min(digits)
max(digits)
>>0
>>9
列表解析
列表解析将for循环和创建新元素的代码合并成一行,并自动附加新元素。
squares = [value**2 for value in range(1,11)]
print(squares)
>>[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
使用列表的一部分
使用切片可以生成列表的任何子集
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[0:3])
>>['charles', 'martina', 'michael']
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[1:4])
>>['martina', 'michael', 'florence']
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[:4])
>>['charles', 'martina', 'michael', 'florence']
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[2:])
>>['michael', 'florence', 'eli']
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[-3:])
>>['michael', 'florence', 'eli']
如果要遍历列表的部分元素,可在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())
Here are the first three players on my team:
Charles
Martina
Michael
要复制列表,可创建一个包含整个列表的切片,方法数同时省略起始索引和终止索引([:])。这让python创建一个始于第一个元素,终止于最后一个元素的切片,即复制整个列表。
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 favorite foods are:
['pizza', 'falafel', 'carrot cake']
My friend's favorite foods are:
['pizza', 'falafel', 'carrot cake']
元组
元组看起来和列表一样,但使用圆括号而不是方括号来标识。定义元组后,就可以使用索引来访问其元素。元组的值是不能被修改的。
dimensions = (200, 50)
print(dimensions[0])
print(dimensions[1])
>>200
50
像列表一样,也可以使用for 循环来遍历元组中的所有值
dimensions = (200, 50)
for dimension in dimensions:
print(dimension)
>>200
50
虽然元组的元素不能被修改,但可以给存储元组的变量赋值。
dimensions = (200, 50)
print("Original dimensions:")
for dimension in dimensions:
print(dimension)
dimensions = (400, 100)
print("\nModified dimensions:")
for dimension in dimensions:
print(dimension)
>>Original dimensions:
200
50
Modified dimensions:
400