python循环中的else_Python循环语句中的else分支

编程语言Python的循环语句跟其它语言最大的不同在于,可以带一个else分支。

如下代码断示例:

for i in range(len(strii),1,-1):

if cc == 3:

result = ',' + result

cc = 0

result = strii[i-1] + result # index starts from 0

cc += 1

else: # after the loop is over

if strii[0] == '-':

result = strii[0] + result # negative sign

return result # return a string

注意那个else语句,这个else语句是跟for循环配对的。

在Python中,跟循环语句配对的else语句的执行规则:

1, 这样的else不能是else if....,不能带条件的;

2, else语句在循环执行完毕之后,立即执行;(如果是break语句跳出的循环,else就不执行)

3, 如果代码不能进入循环,直接执行else语句;

关于以上第一条,如果是else if,在模块加载的时候,系统报错:

>>> imp.reload(za)

Traceback (most recent call last):

File "", line 1, in

File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib\imp.py

", line 314, in reload

return importlib.reload(module)

File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib\import

lib\__init__.py", line 166, in reload

_bootstrap._exec(spec, module)

File "", line 626, in _exec

File "", line 661, in exec_module

File "", line 767, in get_code

File "", line 727, in source_to_code

File "", line 222, in _call_with_frames_removed

File "d:\onlinepro\za.py", line 92

else if strii[0] == '-': # after the loop is over

^

SyntaxError: invalid syntax

对于while循环,一样的。

>>> while False:

... print('a')

... else:

... print('b')

...

b

虽然没有else,整个代码的执行流程跟有else是一样的,Python这样做带来的好处是增加人类对代码的可读性,让与循环有关系的代码形成一个整理,逻辑和结构性都更强。

Python中对于异常处理的代码,依然有else分支可以使用,提高可读性:

try:

abcd += 10

except:

print('yichang')

else:

print('ok')

如果没有发生异常,打印OK;

如果发生异常,else分支不再执行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值