这一篇教程我们来接触循环。
循环有两种方法,一种是for…in…,另外一种是while…。
首先,我们来看for…in…循环。
语句内容为[for 变量 in 可迭代对象:],注意不要遗漏结尾的冒号。
for循环能够对可迭代对象进行迭代(可以简单的理解为依次读取),所以,可迭代对象的元素数量,决定循环的次数。
每一次迭代,都会从可迭代对象中读取元素写入in前方的变量,但是,这个变量并非一定要使用。
另外,每一次迭代,都会执行for语句下方向右缩进的语句块。
特别说明1:在Python的编程规范中,用4个空格来缩进代码,或者用tab缩进代码,但不要空格和tab混用。
特别说明2:PyCharm提供了代码格式化功能,通过快捷键Ctrl+Alt+L,可以快速让代码变得规范整齐。
例如,我们从一个列表中取出所有的元素,并依次显示输出。
示例代码:
for s in ['小楼', '是', '一个', '帅哥']: print(s) # 向右缩进的语句
运行代码之后,显示的结果为:
大家能够看到,列表中每一个元素都被读取出来并且显示输出。
不过,我们能不能让显示输出的结果在同一行显示呢?
这里,我们再来看一下print这个方法。
print(*objects, sep, end, file, flush)方法,参数objects表示多个输出的对象;参数sep表示多个输出对象直接的分隔符,默认为1个空格;参数end表示输出对象结束符,默认为换行符;参数file表示数据流输出到的文件;参数flush表示数据流输出至文件时是否缓冲,默认为False(不缓冲)。
因为print方法中的参数end默认值为换行符,所以上面代码的运行结果会分多行显示。
如果需要在同一行显示,我们只需要将参数end设置为空即可。
示例代码:
for s in ['小楼', '是', '一个', '帅哥']: print(s, end='') # 显示输出结果为:小楼是一个帅哥
循环不仅能够对可迭代对象进行读取和输出,还可以用于重复某一过程。
例如,我们把“小楼好帅!”这句话重复显示输出10次。
示例代码:
for i in range(5): print('小楼好帅!')
运行代码之后,显示的结果为:
大家能够看出,在上方代码中变量i并没有什么作用,而range(5)是关键。
我们来了解一下range这个方法。
range(start,stop,step)函数能够获取一个连续增加的不可变的整数序列,参数start为序列的起始数值,;参数stop为序列的终止数值;参数step为步长,默认值为1。
那么,range(5)就能够获取一个0~4的整数序列,这个序列包含了5个元素。
所以,for循环在进行迭代时,能够迭代5次,也就将下方向右缩进的语句块执行了5次。
range方法还能够帮助我们取得偶数序列和奇数序列等。
示例代码:
print(list(range(0,10,2))) # 获取0~9中的偶数,显示输出结果为:[0, 2, 4, 6, 8] print(list(range(1,10,2))) # 获取0~9中的奇数,显示输出结果为:[1, 3, 5, 7, 9]
接下来,我们来看另外一种while…循环。
语句内容为[while 条件:],注意不要遗漏结尾的冒号。
通过语句内容,可以理解,只要满足循环的条件,就能够继续循环,否则,退出循环。
每一次循环,都会执行while语句下方向右缩进的语句块。
既然也是循环,那么刚才的示例效果也可以通过while来实现。
示例代码:循环显示输出列表内容
l = ['小楼', '是', '一个', '帅哥'] # 创建列表 n = 0 # 创建变量,用于计数 while n < len(l): # 循环,条件为计数数量小于列表元素数量 print (l[n], end='') # 符合条件时,将计数数量作为列表索引,获取元素显示输出 n += 1 # 计数数量自增1 # 显示输出结果为:小楼是一个帅哥
示例代码:重复显示输出“小楼好帅!”5次
n = 0 # 创建变量,用于计数 while n < 5: # 循环,条件为计数数量小于重复次数 print ('小楼好帅!') # 符合条件时,显示输出字符串内容 n += 1 # 计数数量自增1 # 显示输出结果为:(略)
示例代码:获取0~9之间的奇数与偶数
l = [] # 创建空列表 n = 0 # 创建变量,用于获取偶数,获取奇数时变量初始值为1 while n < 10: # 循环,条件为计数数量小于重复次数 l.append(n) # 符合条件时,将偶数添加到列表 n += 2 # 计数数量自增2 print (l) # 显示输出结果为:[0, 2, 4, 6, 8]
以上是两种循环的使用方法和示例。
在下一篇教程中,我们结合条件判断,了解循环中continue和break的使用。
本节知识点:
1、for…in…循环的使用
2、while…循环的使用
本节英文单词与中文释义:
1、for:因为
2、while:当…时…
3、range:范围
4、sep(separate):分隔
5、flush:冲刷
6、step:步长
7、continue:继续
8、break:突破/跳出
练习:
使用循环计算1~100之间所有偶数的和。
答案:(见评论1楼)
转载请注明:魔力Python » Python3萌新入门笔记(11)