python - AttributeError:模块'turtle'在spyder中没有属性'screen'?
问题描述
这段代码有什么问题?我尝试运行此代码,但在输出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()
解决方案
您的代码中有一些问题。首先,这个:
window = turtle.screen()
应该是这样的:
window = turtle.Screen()
同上:
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()
推荐阅读
- ios - 确定 SKNode 是否在相机视图前面(ARKit Spritekit)
- javascript - 将对象数组缩减为单个对象
- c++ - 如何用不同的 VAO、VBO 绘制 2 个或更多对象?
- sql - SQL Server pull out only data after = OR only the numerics
- java - 多个类中使用的完全相同的方法:登录功能
- java - 如何在 Java 中重新启动方法?
- react-native - 错误:插件/预设不允许导出对象,只能导出功能。更新后反应原生 0.57
- mongodb - 使用 mongoimport 更新 MongoDB 集合中的现有文档
- javascript - 使用 Node.js 的 JSON 文档中的动态键
- protocol-buffers - 读取 Apache Beam 中的协议缓冲区文件