我想吃这个
t=turtle.Turtle()
t.color("white")
t.pensize(2)
t.shape("turtle")
t.speed(0)
使用OOP制作很多 ,所以我尝试了,但没有成功
class turtles:
def __init__(self, color, pensize, shape, speed):
self.self = turtle.Turtle()
self.color = self.("color")
self.pensize = self.(pensize)
self.shape = self.("shape")
self.speed = self.(speed)
t = turtles('blue', '2', 'turtle', '0')
答案 0 :(得分:0)
在没有OOP的情况下,您正在使用Turtle
的对象,并且将其放在类中时,也必须这样做。试试:
class turtles:
def __init__(self, color, pensize, shape, speed):
self.turtle = turtle.Turtle()
self.turtle.color(color)
self.turtle.pensize(pensize)
self.turtle.shape(shape)
self.turtle.speed(speed)
t = turtles("blue", 2, "turtle", 0)
答案 1 :(得分:0)
尝试一下:
import turtle
class turtles(turtle.Turtle):
def __init__(self, color, pensize, shape, speed):
super().__init__(shape)
self.color(color)
self.pensize(pensize)
self.shape(shape)
self.speed(speed)
t = turtles("blue", 2, "turtle", 0)
t.forward(10)
在代码的第一行中,我在类名后的括号中放置了“ Turtle”,以告诉python该类继承自“ Turtle”。这意味着它以“ Turtle”类为基础,该技术通常用于扩展或变异现有的类。
通过从“ Turtle”继承,函数中的“ self”变量是从“ Turtle”继承的对象。这意味着您可以直接通过self设置乌龟图形参数,而无需额外的变量。
您可以在此处阅读有关继承的更多信息: https://www.w3schools.com/python/python_inheritance.asp
答案 2 :(得分:0)
我相信这应该按照您的描述进行:
from turtle import Screen, Turtle
class MyTurtle(Turtle):
def __init__(self, color, pensize, shape, speed):
super().__init__(shape)
self.color(color)
self.pensize(pensize)
self.speed(speed)
yertle = MyTurtle('blue', 2, 'turtle', 'fast')
yertle.circle(100)
screen = Screen()
screen.exitonclick()
super().__init__()
调用非常关键(特定于Python3,在Python2中还有另一种方法),因为它设置了龟需要的各种属性。