遍历整个列表
注意 for
语句后面的冒号:
以及后面的缩进。
motorcycles = ['bmw', 'audi', 'toyota', 'subaru']
for motorcycle in motorcycles:
print(motorcycle)
创建数值列表
使用函数 range()
函数 range()
可以生成一系列数,但是不是列表。
当有两个参数时,范围不包括第二个值。
当只有一个参数时,将从 0 开始。
for value in range(1, 4):
print(value)
# 1
# 2
# 3
for value in range(4):
print(value)
# 0
# 1
# 2
# 3
当有三个参数时,第三个参数为步长。
for value in range(1, 10, 2):
print(value)
# 1
# 3
# 5
# 7
# 9
使用 range() 创建数字列表
可使用函数
list()
将range()
的结果直接转换为列表。numbers = list(range(1, 6))
print(numbers) # [1, 2, 3, 4, 5]
可先创建空列表,再遍历
range()
,将值添加到列表中
在 Python 中,两个星号(**) 表示乘方运算。
squares = []
for value in range(1, 11):
squares.append(value ** 2)
print(squares) # [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
对数字列表执行简单的统计计算
digits = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print(min(digits)) # 0
print(max(digits)) # 9
print(sum(digits)) # 45
列表解析
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[1: 3]) # ['martina', 'michael']
print(players[: 3]) # ['charles', 'martina', 'michael']
print(players[1:]) # ['martina', 'michael', 'florence', 'eli']
可以为负数
players = ['charles', 'martina', 'michael', 'florence', 'eli']
# 输出倒数三个元素
print(players[-3: ]) # ['michael', 'florence', 'eli']
还可以再加个冒号,指定第三个值。这个值告诉 Python 每隔多少元素提取一个。
默认且最小是 1
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[-3: :2]) # ['michael', 'eli']
遍历切片
players = ['charles', 'martina', 'michael', 'florence', 'eli']
for player in players[:3]:
print(player.title())
'''
Charles
Martina
Michael
'''
复制列表
生成一个包含全部元素的切片
my_foods = ['pizza', 'coffee']
friend_foods = my_foods[:]
my_foods.append('ice cream')
print(my_foods) # ['pizza', 'coffee', 'ice cream']
print(friend_foods) # ['pizza', 'coffee']
元组
元组的元素不可变,修改程序会报错。
dimensions = (200, 50)
dimensions[0] = 200 # TypeError: 'tuple' object does not support item assignment
可以给存储元组的变量重新赋值。
和列表类似,但是使用圆括号标识,严格说是使用逗号标识的,逗号不能省略,当定义只有一个元素的元组时,必须在这个元素后面加上逗号。
dimensions = (200, 500)
print(type(dimensions)) # <type 'tuple'>
dimensions = (200,)
print(type(dimensions)) # <type 'tuple'>
dimensions = 200, 50
print(type(dimensions)) # <type 'tuple'>
dimensions = 200,
print(type(dimensions)) # <type 'tuple'>
可以使用索引访问。
dimensions = (200,)
print(dimensions[0]) # 200
像列表一样,可以使用 for
循环遍历
dimensions = (200, 50)
for dimension in dimensions:
print(dimension)
# 200
# 50