1. 基本对象类型(python里面一切皆是对象)
(接前文)
1.5.5 遍历整个列表
通过使用for 循环,遍历列表的所有元素,缩进的代码行都是循环的一部分,对每个元素执行相同的操作。示例:
magicians = ['alice', 'david', 'carolina']
for magician in magicians:
print(magician.title() + ", that was a great trick!") #缩进,所有元素都会执行
print("\nThank you, everyone. That was a great magic show!") #没有缩进,不属于for循环
输出:
Alice, that was a great trick!
David, that was a great trick!
Carolina, that was a great trick!
Thank you, everyone. That was a great magic show!
示例中定义了一个列表magicians。for 循环从列表magicians 中取出一个名字,并将其存储在变量magician 中,重复执行print指令,即对列表magicians 中的每位魔术师,打印信息。
注意:循环语句缩进容易出错,务必谨慎。
补充:列的名称建议使用能描述元素的名称的复数形式,编写for 循环时存储列表中每个值的临时变量名称建议使用单数形式。如for dog in dogs:
1.5.6 创建数值列表
1.5.6.1 函数range()
函数range(m,n,s) 生成从m开始到n-1(注意不是n)的一串数字集,步长为s。
注意:若m不指定,则默认从0开始;若步长不指定,则默认为1。
range()创建的是数字集。示例:
for value in range(2,6):
print(value)
#生成数字集2、3、4、5
for value in range(1,11,2): #从1到11,步长为2,即10以内的奇数。不包括11
print(value)
#生成数字集1、3、5、7、9
1.5.6.2 使用range()创建数字列表
使用类型转换函数list() 将range() 的结果直接转换为数字列表。示例:
numbers = list(range(1,6)) #list函数转换类型为列表
print(numbers) #输出[1, 2, 3, 4, 5]
示例:
squares = []
for value in range(1,11): #for在数字集中循环
squares.append(value**2) #添加列表squares末尾
print(squares) #s输出[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
1.5.7 列表解析
格式:[表达式 for 给表达式提供值]。示例:
squares = [value**2 for value in range(1,11)]
print(squares) #输出[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
说明:示例中for 循环为for value in range(1,11) ,它将值1~10提供给表达式value**2 。注意,这里的for 语句末尾没有冒号。