我正在尝试编写用于绘制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()
输出值