6 python turtle-graphics python-3.6 python-turtle
当我使用海龟模块用这个简单的函数画一个圆时:
def draw_shape(self):
canvas = Screen()
t = Turtle()
t.circle(self.r)
canvas.exitonclick()
Run Code Online (Sandbox Code Playgroud)
当我第一次调用此函数时,它会打开一个新窗口并绘制一个圆圈,我单击它退出,当我尝试再次从控制台中的菜单调用此函数时,我收到错误:
Original exception was:
Traceback (most recent call last):
File "main.py", line 136, in <module>
main()
File "main.py", line 132, in main
OPTIONS[user_input][1](shapes)
File "main.py", line 48, in handle_sixth_menu_option
t = Turtle()
File "/usr/lib/python3.6/turtle.py", line 3816, in __init__
visible=visible)
File "/usr/lib/python3.6/turtle.py", line 2557, in __init__
self._update()
File "/usr/lib/python3.6/turtle.py", line 2660, in _update
self._update_data()
File "/usr/lib/python3.6/turtle.py", line 2646, in _update_data
self.screen._incrementudc()
File "/usr/lib/python3.6/turtle.py", line 1292, in _incrementudc
raise Terminator
turtle.Terminator
Run Code Online (Sandbox Code Playgroud)
小智 1
您可以尝试以下操作:
def draw_shape(self):
import turtle as t
canvas = Screen()
t.circle(self.r)
canvas.exitonclick()
Run Code Online (Sandbox Code Playgroud)
您的代码无法正常工作的原因是您def
之前已经通过单击退出删除或退出了函数中的海龟实例一次。因此,通过使用import turtle as t
您将再次调用它并创建一个新实例。
归档时间: |
|
查看次数: |
18172 次 |
最近记录: |