Python task 02-条件循环结构

while循环
完整的while循环结构如下:

while condition:
    body
else:
    post-code

condition是一个布尔表达式,也就是运算结果为值True或False。只要condition为True,body部分的代码就会重复执行下去。如果condition的计算结果为False,则while循环将会执行post-code部分的代码,然后停止执行。如果condition一开始就为False,那么body部分代码就根本不会被执行,只会执行post-code部分的代码。body和post-code部分的代码都是由换行符分隔的一条或多条Python语句,并且代码缩进的级别也相同。Python解释器根据代码缩进的级别来识别这两个部分。这里不需要使用其他分隔符,如大括号或方括号。
另外,while循环的else部分是可选的,且不常用到。因为只要body部分没有包含break语句,那么循环

while condition:
    body
else:
    post-code

和循环

while condition:
    body
post-code

在while循环的body部分,可以使用两种特殊语句,也就是语句break和continue。如果执行了break语句,那么while循环就会立即终止,甚至都不会再执行post-code部分(当存在else子句时)。如果执行了continue语句,则会导致body部分的剩余语句被跳过,进行下一次condition计算,循环继续进行。

if-elif-else语句
通用的if-elif-else结构的形式如下:

if condition1:
    body1
elif condition2:
    body2
elif condition3:
    body3
.
.
.
elif condition(n-1):
    body(n-1)

else:
    body(n)

如果condition1为True,则执行body1;否则,如果condition2为True,则执行body2;否则……依此类推,直至遇到判断为True的条件或者else子句并执行body(n)。与while循环一样,body部分也由一条或多条Python语句构成,由换行符分隔并处于相同的缩进级别。
当然,并不是每个条件从句都必须存在。elif、else部分是可以省略的,两者可以都省略。如果没有符合条件的语句可执行(没有条件为True,也没有else部分),那就什么都不做。

for循环
在python中,for 循环遍历的是任何可以迭代对象的返回值,也就是可以任何生成值序列的对象。
例如,for循环可以挨个遍历列表、元组或字符串的元素。这里的可迭代对象还可以是特殊的range函数,或者被称为生成器(generator)或生成器表达式的特殊类型函数。这种生成器函数的功能非常强大,常见的形式为:

for item in sequence:
    body
else:
    post-code

对sequence的每个元素都会执行一次body部分的语句。一开始item会被设为sequence的第一个元素,并执行body部分;然后item会被设为sequence的第二个元素,并执行body部分,等等,对sequence的其余元素都会逐个依此处理。

range函数
有时候循环中需要显式的索引(如值在列表中出现的位置)。这时可以将range函数和len函数结合起来使用,生成供for循环使用的索引序列。以下代码将会打印列表中所有出现负数的位置:

x = [1, 3, -7, 4, 9, -5, 4]
for i in range(len(x)):
    if x[i] < 0:
        print("Found a negative number at index ", i)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值