一、循环的使用方法
names = ["张真","刘德华","哈林","谢霆锋","张柏芝"] for name in names: print("你好!"+ name) print("i love you" + name)
二、使用函数range(),配合循环轻松生成一组数字
#以下代码好像应该打印数字1~5,但实际上它不会打印数字5: for i in range(1,5): print(i) #注意:函数range() 让Python从你指定的第一个值开始数,并在到达你指定#的第二个值后停止,因此输出不包含第二个值(这里为5)。
三、使用range() 创建数字列表
# 要创建数字列表,可使用函数list() 将range() 的结果直接转换为列表。如果将range() 作为list() 的参数,输出将为一个数字列表。 inum = list(range(1,6)) print(inum) print("上边代码输出的是:[1,2,3,4,5]") #使用函数range() 时,还可指定步长。例如,下面的代码打印1~10内的偶数: inum = list(range(2,11,2)) #range()括号中为三个数的时候,第一个数是起始数,第二个是终止数,第三个数是步长 print(inum) print("上边代码输出的是:[2,4,6,8,10]")
循环与range()方法配合使用小案例,把1--10的二次方,打印到一组列表中
message = [] #声明一个空列表用于存储列表值 for num in range(1,11): #使用循环打印1到10 nums = num**2 #在循环内计算每个值的2次方,**代表乘方运算 message.append(nums) #使用append()方法将计算的结果添加到类表中 print(message) #结束循环,打印列表 # 更加简洁的一种写作方法 message = [] for num in range(1,11): message.append(num**2) #直接把计算的值添加到列表中,不需要再设置变量 print(message) # 列表解析,大白话讲就是精简以上代码,将以上代码合成一行的另一种写法 # 注意:将所有的过程赋给变量,用方括号包起来,运算在前,循环在后,for语句后没有冒号 message = [num**2 for num in range(1,6)] print(message)
四、对数字列表执行简单的统计计算,找出数字列表中的最小值,最大值,列表值的总和
最小值 min()最大值 max()总 和 sum()
############# 案例 ################# dlist = [1,2,3,4,5,6,7,8,9,0] x = min(dlist) # 最小值 print(x) d = max(dlist) # 最大值 print(d) h = sum(dlist) # 总 和 print(h)
####### 案例练习 #######
01、用for循环打印数字1到20
for num in range(1,21): print(num)
02、创建一个列表,打印1-100000,用for循环打印出来,并查看最大值和最小值,并且求和
message = [] for num in range(1,100001): nums = message.append(num) # 打印1-100000列表 print(message) # 查看最小值和最大值,并且求和 x = min(message) d = max(message) h = sum(message) print(h)
03、给range()传递一个参数,打印出1-20的奇数
for num in range(1,21,2): print(num)
04、创建一个列表,其中包含3~30内能被3整除的数字;再使用一个for 循环将这个列表中的数字都打印出来。
message =[] for num in range(3,31,3): message.append(num) print(message)
05、列表解析打印出1到10的每个数的立方
message = [num**3 for num in range(1,11)] print(message)
五、【切片】使用列表的一部分元素
要创建切片,可指定要使用的第一个元素和最后一个元素的索引。与函数range() 一样,Python在到达你指定的第二个索引前面的元素后停止。要输出列表中的前三个元素,需要指定索引0~3,这将输出分别为0 、1 和2 的元素。
players = ["aaa","fff","rrr","yyy","uuu"] print(players[0:3]) # 打印出来的是索引为0,1,2的值 print(players[1:4]) # 打印出来的是索引为1,2,3的值 print(players[:4]) # 未设置起始索引值,将自动从0开始 print(players[2:]) # 未设置结束索引值,将自动从起始值开始到最后一个结束 print(players[-3:]) # 负数可以切出最后几位 # 遍历切片,我们只遍历了前三名0,1,2 for player in players[:3]: print(player.title()) print(player.lower()) print(player.upper())
5.1复制列表
myfoods = ["aaa","fff","rrr","yyy","uuu"] friendfoods = myfoods[:] # 复制列表,这里复制的将是副本, friendfoods.append("ooo") #验证是否真的是两个列表 print(myfoods) print(friendfoods)
备注:friendfoods = myfoods 这种复制方法,相当于把新变量与原来的变量关联起来,他们实际上是指向同一个列表,操作其中一个,另一个也会随之改变
六、元组
一、元组相对于列表# 01、元组是不可修改的# 02、元组用一对()包裹起来# 03、元组的每个值的使用和列表一样都可以用索引来调取# 04、相比于列表,元组是更简单的数据结构。如果需要存储的一组值在程序的整个生命周期内都不变,可使用元组。
dlists = (200,500) print(dlists[0]) # 用索引调用列表的值
A、遍历元组,与列表一样使用for循环
for dlist in dlists: print(dlist)
B、修改元组变量
# 虽然不能修改元组的元素,但可以给存储元组的变量赋值。因此,如果要修改前述矩形的尺寸,可重新定义整个元组:
dlists = (200,300) dlists = (300,500) print(dlists)