我正在尝试编写用于绘制DFA的Python代码。我打算使用乌龟库。有其他选择吗?我可以绘制节点,但是不确定如何在圆内插入状态名称。
谁能指导我?下面是到目前为止的代码。
谢谢!

import turtle

def draw_node(some_turtle):
    myTurtle.circle(50)
    turtle.getscreen().__root.mainloop()


def draw_design():

    window = turtle.Screen()
    window.bgcolor("teal")

    myTurtle = turtle.Turtle()
    myTurtle.color("white")
    myTurtle.shape("turtle")
    myTurtle.speed(5)
    myTurtle.pensize(4)

    draw_node(myTurtle)

    window.exitonclick()

draw_design()

最佳答案

您的代码的问题似乎是由于缺乏对乌龟库和一般Python编程的了解而造成的。我不一定要说,乌龟库是您想要做的最好的选择,但是它可以完成您程序想要实现的目标:

from turtle import Turtle, Screen

RADIUS = 50

FONT_SIZE = 18

FONT = ("Arial", FONT_SIZE, "normal")

def draw_node(turtle, text, x, y):
    turtle.up()
    turtle.goto(x, y - RADIUS)
    turtle.down()
    turtle.circle(RADIUS)
    turtle.up()
    turtle.goto(x, y - FONT_SIZE // 2)
    turtle.write(text, align="center", font=FONT)

def draw_design(turtle):

    turtle.color("white")
    turtle.pensize(4)

    draw_node(turtle, "S0", -100, 100)

    draw_node(turtle, "S1", 100, 100)

screen = Screen()
screen.bgcolor("blue")

yertle = Turtle(shape="turtle")

draw_design(yertle)

yertle.home()

screen.exitonclick()


输出值

python - 在Python中的圆内插入文本-LMLPHP

10-01 10:50