else
经常与if语句成对出现,有if ... else ...
,if ... elif ... else ...
等形式;本文会介绍一些不常见的else用法.
1. if … else …
if ... elif ... else ...
形式与if ... else ...
在用法是没有区别的.
a = 1
b = 2
if a > b:
print('%s > %s' % (a, b))
else:
print('%s <= %s' % (a, b))
output:
1 <= 2
2. while … else …
n = 10
while n>0:
if n % 5 == 0:
print('000')
break
print('111')
n -= 1
else:
print('222')
output:
000
如果将上述代码中的break去掉,则else语句将会被执行.
3. try … except … else …
该形式与try ... except ... else ... finally ...
只有唯一的区别:finally语句体总是会被执行.
try:
print('normal')
except:
print('error')
else:
print('else')
output:
normal
else
4. for … else …
for i in range(10):
if i % 5 == 0:
print('normal')
break
else:
print('else')
output:
normal
总结:对于while ... else ...
、try ... except ... else ...
、for ... else ...
来说,当语句体中有break
、return
或者异常发生
则不会执行else
语句体;其余情况下()则会执行else语句体.