如何跳出多层嵌套循环
单层循环可以用break,多层循环可以使用以下的三种方法
- 设置一个标记
- 将循环写在函数内部,用return
def work():
for i in range(10):
for j in range(10):
if i+j > 5:
return i,j
print work()
- 用异常。
自定义异常:
class Found(Exception):
pass
try:
for i in range(10):
for j in range(i):
if i + j > 5:
raise Found
except Found:
print i, j
创建二维矩阵,矩阵的行列统计
2 d_list = [[0 for col in range(cols)] for row in range(rows)]
a = [[1, 2, 8, 9],
[2, 4, 9, 12],
[4, 7, 10, 13],
[6, 8, 11, 15],
[7, 9, 12, 17]]
#len(a),=5 len(a[0])=4
区分print和return
可把函数体开始到结束的语句看成是一次旅行计划,参数是我们计划携带去旅行的东西。如果没有return语句,就意味着我们不带回任何东西;如果有return语句,则意味着我们带回来一些东西,比如一些旅游照片、纪念品等(也可以直接带回原来带出去的东西)。
def fnc1(x, y):
return x+y
print ('show me!')
print(fnc1(1,2))
>>>3
- return 会携带返回值,但是后面必须跟print才能显示出返回的内容
- return之后的函数内容不再执行,和break相似
- print 是直接在函数中打印,没有返回任何值