AttributeError:模块“ turtle”在spyder中没有属性“ screen”吗?

时间:2018-12-03 02:25:56

标签: python spyder turtle-graphics

此代码有什么问题?我尝试运行this code,但是在输出中显示了AttributeError: module 'turtle' has no attribute 'screen'

import turtle

def draw_square():
    window = turtle.screen()
    window.bgcolor("red")

    brad = turtle.turtle()
    brad.forward(100)
    brad.right(90)
    brad.forward(100)
    brad.right(90)
    brad.forward(100)
    brad.right(90)
    brad.forward(100)
    brad.right(90)

    window.exitonclick()

draw_square()
turtle.done()
turtle.bye()

3 个答案:

答案 0 :(得分:0)

您的代码中有一些问题。首先,这个:

window = turtle.screen()

应该是这样:

window = turtle.Screen()

Ditto在这里:

brad = turtle.turtle()

应为:

brad = turtle.Turtle()

最后,您在这里有多余之处:

    window.exitonclick()

...
turtle.done()

由于exitonclick()done()的作用相同,但方式不同。在样式方面,我将在draw_square()外部设置屏幕和乌龟,然后让该功能按其功能执行操作,画一个正方形-以下是我编写该程序的方法:

from turtle import Screen, Turtle

def draw_square(turtle):

    for _ in range(4):
        turtle.forward(100)
        turtle.right(90)

window = Screen()
window.bgcolor("red")

brad = Turtle()

draw_square(brad)

window.exitonclick()

答案 1 :(得分:0)

如果您有一个名为“ turtle.py”的文件,则应将其重命名或将其从工作目录中移开 Python解释器尝试从工作目录中导入名为“ turtle.py”的文件,然后再从python安装文件中导入该文件 如果产生此错误的文件本身名为“ turtle.py”,则必须将其重命名!

答案 2 :(得分:0)

请确保您的文件名不是turtle或Turtle