(10)基本对象类型--列表遍历、数值列表、列表解析

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 语句末尾没有冒号。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容