如何将Python turtle绘图代码中的双层嵌套循环改写为单层循环
Python turtle 双层循环转单层循环实现方法
完全可以实现,原代码的双层循环总执行次数为 6 * 6 = 36 次,且外层循环变量i没有在循环体内被调用,只需要把两层逻辑映射到单层36次循环中即可,修改后效果和原代码完全一致,代码如下:
import turtle turtle.bgcolor("white") turtle.pensize(2) turtle.speed(0) m =turtle.Turtle() m.hideturtle() m.penup() m.goto(-350,50) m.showturtle() m.pendown() m.goto(5,5) color_list = ["brown","red","magenta","blue","green","orange"] # 单层循环替代原有双层循环 for n in range(36): turtle.color(color_list[n % 6]) turtle.circle(100) turtle.right(10)
补充说明:
- 原内层的颜色遍历逻辑通过
n % 6实现,每次循环自动按原顺序循环取用6种颜色 - 如果后续外层循环需要用到循环变量
i,可以通过n // 6直接获取对应值,不需要调整整体循环结构
内容的提问来源于stack exchange,提问作者Mohd MJ
相关产品推荐
相关产品推荐

