Итак, я пытаюсь выучить Python, и каждый раз, когда я публикую здесь вопрос, мне кажется, что я сдаюсь...
Я пытаюсь сделать свой собственный класс черепах.Черепаха.
Код: Выделить всё
import turtle
class TurtleGTX(turtle.Turtle):
"""My own version of turtle"""
def __init__(self):
pass
my_turtle = TurtleGTX()
my_turtle.forward(10)
Выдает Traceback: AttributeError: объект «TurtleGTX» не имеет атрибута «_position». Затем я узнаю, что это «частный параметр», который, согласно официальному руководству по Python, я могу искажать/переопределять в своем подклассе TurtleGTX. Как это сделать с такой большой программой, как черепаха, кажется довольно сложным и подразумевает, что мне не хватает более простого решения проблемы. В конце концов я научился, и в этом был смысл, но я все равно хотел бы запустить это сообщество, чтобы увидеть, есть ли элегантный способ создать подкласс черепахи.Turtle. (Следующий шаг — заставить вашу черепаху вести себя иначе, чем стандартная черепаха)
Поэтому комментарий ниже заставил меня подумать, что, возможно, я мог бы сделать это:
Код: Выделить всё
import turtle
class TurtleGTX(turtle.Turtle):
"""My own version of turtle"""
my_turtle = TurtleGTX()
my_turtle.forward(100)
который на самом деле работает! Теперь я посмотрю, к чему это меня приведет... что-то подсказывает мне, что я мог бы сделать один шаг вперед и два шага назад, поскольку это означает, что я не смогу ничего инициализировать в своем подклассе...
Подробнее здесь:
https://stackoverflow.com/questions/944 ... tle-module