使用 Turtle 绘制坐标

Draw Co-ordinates using Turtle

我正在尝试使用 Python Turtle 绘制一组坐标,但是,我卡住了,不知道如何继续。

def generate_map(x_range, y_range, locations):
    generated_map = []

    for x in range(locations):
        generated_map.append([random.randint(x_range, y_range), random.randint(x_range, y_range)])


    return generated_map

 new_generated_map = generate_map(-20,20,10)
 print("The co-ordinates are:",new_generated_map)

def print_map(speed, color, thickness, selected_map):
    print("printing map")


    turtle.speed(3)
    turtle.pencolor("black")
    turtle.pensize(4)


    for locations in (new_generated_map):
        turtle.pendown()

我知道我必须设置一个循环函数,但我不知道如何写出来,对编程来说还是个新手。

将此添加到 print_map 中的循环:

turtle.goto(locations)

您可以使用turtle.setpos()turtle.goto(),坐标作为参数:

def print_map(speed, color, thickness, selected_map):
    print("printing map")

    turtle.speed(3)
    turtle.pencolor("black")
    turtle.pensize(4)

    for locations in (new_generated_map):
        turtle.setpos(locations)
        turtle.pendown()

注意几点:

  1. 因为在你的 for 循环中没有 turtle.penup(),你只需要在 for 循环之外调用一次 turtle.pendown() 方法,因为它节省了效率。如果您的代码中根本没有 turtle.penup() 调用,则可以完全删除 turtle.pendown()
  2. 无需将 new_generated_map 列表括在方括号中即可遍历列表。

所以改进后的函数为:

def print_map(speed, color, thickness, selected_map):
    print("printing map")

    turtle.speed(3)
    turtle.pencolor("black")
    turtle.pensize(4)

    for locations in new_generated_map:
        turtle.setpos(locations)