AttributeError:模块'ColabTurtle.Turtle'没有属性'undo'

2024-10-01 07:28:26 发布

您现在位置:Python中文网/ 问答频道 /正文

在使用TheEpython库时,我发现了一个错误

“错误”

AttributeError module ColabTurtle.Turtle has no attribute undo

“代码”

import ColabTurtle.Turtle as t
t.initializeTurtle(initial_speed=5)
t.speed(1)
t.forward(100)
t.undo()

Tags: no代码importas错误attributeattributeerrorhas
1条回答
网友
1楼 · 发布于 2024-10-01 07:28:26

您使用的是精简版的Turtle,它不包含撤消缓冲区。
https://github.com/tolgaatam/ColabTurtle/blob/master/ColabTurtle/Turtle.py

您必须使用自己的undo函数来解析global svg_lines_string并删除最后一个条目。我不打算测试,但它是这样的:

def undo():
    global svg_lines_string
    last_entry  = t .svg_lines_string .rfind('<line x1=')
    t .svg_lines_string  = t .svg_lines_string[ :last_entry ]
    t ._updateDrawing()

undo()


或者,您可以使用t.clear(),然后重新绘制到该点的所有内容,排除最后一步



如果它同时支持屏幕上的多个turtle,那么您可以使用一个辅助turtle,该辅助turtle仅绘制您希望放弃的命令。这样,当你做一个t2.clear()时,它不会擦除你原来的海龟

相关问题 更多 >