第5课 循环结构
主要内容:
list 列表结构
for循环
range() 函数
1 列表 list
列表,通俗来说就是一系列的东西排成一排。
1.1 引例
比如一队狗狗排一排,分别是小花狗、金毛、小土狗、哈巴狗。写成程序如下:
在上面的程序中:
dogs是一个列表,是好几个小狗狗的集合(即,狗群),使用将狗群中的每一个小狗排成一排
这样就可以通过这个列表来指定狗群中的每个小狗狗了,比如狗群1号狗狗,狗群2号狗狗,狗群3号狗狗
事实上,列表中每个元素的编号,是从0开始的。自然数,也是从0开始的。
所以,狗群中第一只狗狗是,第二只是dogs[2]`
1.2 list语法
定义一个列表变量a,每个元素使用中括号[ ]包含到一起,并使用逗号隔开 a列表中的每个元素分别是 a[0], a[1], a[2],...
2 循环结构
在1.1例子中,如果狗狗很多,如何把各个狗狗的名字依次输出?
当然,如果狗狗并不是特别多时,也可以凑合着这样写
但是, 如果狗狗真的很多,比如
如果要输出每只狗狗,难道要一个一个地写下去么?计算机不累,写程序的先累了,绝对有简单方式
2.1就是解决方案
前面那种复杂繁琐的解决办法,就好像是你在对着狗群喊“狗狗1报数”,然后狗狗1报数;接着你又喊“狗狗2报数”,然后狗狗2开始报数;再接着你又喊“狗狗3报数”,然后狗狗3报数;......
其实你完全可以这样说,“狗群中的听好了,,报数!”,然后它们就一个接着一个自动报数。写成程序就是
2.2 for循环语法
理解要点:
上面代码中,xs就是那一列数据, x用来代码每一次要操作的列表中的某一个数据
,是关键字,必须严格写,不能改成大写
for这一行最后需要有个冒号: (注意是英文状态的冒号)
对每个数要做的操作,需要有缩进
2.3 案例 依次输出好朋友们的名字
2.4 案例 依次输出20以内的每个整数
3 range函数3.1 引例
如果写一个程序,依次输出从0开始到自然数,到20结束。这个程序该怎么写?
可能会写成这样
刚才我们学了for循环了,可能你会写成这样
3.2 range解决方案
数学中我们有表示方法
[0,10], 表示0,1,2,3,...,10,即从0开始,到10结束(包括10)的11个数
[2,10), 表示2,3,4,....,9,即从2开始,到10结束(但不包括10)的7个数
对应数学中的区间,python提供了这个函数,也可以表示区间
range(1,10) 对应区间 [1,10), 即 1,2,3,...,9,不包含10
range(1,100) 对应区间[1,100), 即 1,2,3,....,99, 不包含100
range(10) ,默认开始为0,对应区间为[0,10) ,即 0,1,2,...,9
那么前面那个要从0输出到20的程序,我们可以写成这样
或者这样
4 作业
输出1,2,...,100
输出 2,4,6,...,100
输出1,3,5,7,...,21
执行并看懂下面的程序,发挥你的创意改写有意思的程序
记忆
list 列表
dogdogs 对于狗狗群中的每一个小狗狗
range() 列表
领取专属 10元无门槛券
私享最新 技术干货