循环嵌套,这个应该非常常见,比如说打印表格,打印乘法表,打印金字塔等等,都需要利用循环嵌套。
而python循环常用的非别为for in循环以及while循环,我们简单介绍一下两种循环的区别。
如果我们明确知道循环需要执行多少次,或者爹对一个容器进行迭代,那我们最好使用for in 循环
比如说:我们要求1-100内数值的和,明确了循环需要执行多少次,那么我们使用forin是最好的选择。
sum = 0 for x in range(101): sum += x print(sum)既然知道要执行多少次循环使用forin是最好的选择,那么while就是在不知道循环次数时最好的选择了。
举一个很好玩的小例子,这个例子也是在《Python编程:从入门到实践》中,作者最初做出来给家人玩的小游戏-----猜数小游戏。
import random answer = random.randint(1, 100) counter = 0 while True: counter += 1 number = int(input('请输入: ')) if number < answer: print('大一点') elif number > answer: print('小一点') else: print('恭喜你猜对了!') break print('你总共猜了%d次' % counter)可以看出,while真的很适合这种判断条件的循环。
下面我们切入正题,输出不同的三角形,直接先上代码吧。
row = int(input('请输入行数: ')) for i in range(row): for _ in range(i + 1): print('*', end='') print() for i in range(row): for j in range(row): if j < row - i - 1: print(' ', end='') else: print('*', end='') print() for i in range(row): for _ in range(row - i - 1): print(' ', end='') for _ in range(2 * i + 1): print('*', end='') print()效果图呢?

其实看到代码就应该明白,这是一个简单的循环嵌套问题,就是把通过最外层循环的行数来进行内部的循环,输出空格+*号,不过只需要通过调整顺序就能得到第一第二两种效果了,而第三种呢,可以看出,他比其余的要多一半,我们还是通过最外层的数据来进行判断,然后进行*2-1的操作就能得到相应的数据了。
是不是很简单呢?如果有什么不懂的可以在评论区留言,我会在看到的第一时间进行回复的。