【发布时间】:2017-05-12 12:11:08
【问题描述】:
我在高中的编程课上使用海龟图形,该项目是按照老师展示的一些指导方针和功能制作一朵花。我在一个小时内完成了,现在我正在尝试使用更多的乌龟一次绘制多朵花,但是我无法让乌龟使用新定义的功能,老师也没有时间与我见面一个人来讨论我该怎么做
所以经过大约一周的搜索(对于一些我不知道如何正确询问的问题,更不用说寻找),我要去我最喜欢的问题网站。因此,如果有人可以帮助我或至少为我指明正确的方向,我将不胜感激。
import turtle
tod = turtle.Turtle
tina = turtle.Turtle
tony = turtle.Turtle
trixie = turtle.Turtle
tron = turtle.Turtle
def petal():
for i in range(90):
self.start = self.pos()
self.fd(1)
self.rt(1)
self.rt(90)
for i in range(90):
self.fd(1)
self.rt(1)
def stem(self):
self.pencolor('green')
self.fd(220)
def flowerhead(self):
for i in range(9):
begin_fill()
petal()
self.lt(230)
end_fill()
def stempetal(self):
self.seth(90)
self.rt(15)
fillcolor('green')
begin_fill()
petal()
end_fill()
def flower1(self):
flowerhead()
stem()
stempetal()
def flower2(self):
flowerhead()
self.stem()
tod.flower()
运行报错
Traceback (most recent call last):
File "C:\Users\first.last\Desktop\programming\trig class\testflowerclass.py", line 49, in <module>
tod.flower()
AttributeError: type object 'Turtle' has no attribute 'flower'
【问题讨论】:
-
您的 sn-p 中没有
tod.flower()呼叫。也许您发布了错误的代码? -
那是我输入的代码,我已经将其定义为 tod Flower 以使其工作(对 python 不太熟悉),如果是这样,我是否必须为每只海龟再次定义所有内容????
-
我不明白你在说什么。当我运行你的代码时,我没有收到任何错误,尽管它没有任何意义。
-
您定义的函数似乎是从一个类中删除的,因为它们引用了 self.如果您将它们编写为扩展
turtle.Turtle,那么您可能应该继承turtle.Turtle -
另外,你的海龟不是你的类的实例。你可能需要
tod = turtle.Turtle()
标签: python python-3.x turtle-graphics