1. for…(break)…else的用法:
from math import sqrt
for i in range(3, 101):
for j in range(2, int(sqrt(i)) + 1):
if i % j == 0:
break
else:
print i
如果for循环未被break终止,则执行else块中的语句。否则,不执行else中的语句。
2. while…(break)…else的用法:
from math import sqrt
for i in range(3, 101):
j = 2
while j < sqrt(i) + 1:
if i % j == 0:
break
j += 1
else:
print i
如果while循环未被break终止,则执行else块中的语句。否则,不执行else中的语句。
3. try…except…else的用法:
try:
<Code block>
except ErrorType, e:
<Code block>
except ErrorType, f:
<Code block>
else:
<Code block>
finally:
<Code block>
如果有错误发生,则执行else块中的语句。否则,不执行else中的语句。
4. continue和break在循环中的区别:
# continue代码如下:
for x in range(1, 4):
print(x, 'for语句')
continue
print(x, 'continue语句后')
else:
print(x, 'else语句')
# 执行结果:
>>> 1 for语句
>>> 2 for语句
>>> 3 for语句
>>> 3 else语句
# break代码如下:
for x in range(1, 4):
print(x, 'for语句')
break
print(x, 'break语句后')
else:
print(x, 'else语句')
# 执行结果:
>>> 1 for语句
4. 实现循环查找:
x in data:
if meets_condition(x):
break
else:
# raise error or do additional processing
假说你在查找一个满足特定条件的项目(item),同时需要进行附加处理,或者在未发现可接受的值时生成一个错误。
来源:
http://blog.csdn.net/humanking7/article/details/43792425
http://python.jobbole.com/81063/