我阅读了很多其他问题和答案,但我仍然无法修复我的 AttributeError。 我尝试在 100 天内完成一个贪吃蛇游戏的代码挑战。所以我很抱歉作为一个新手。 这是我的代码的重要部分:
这个属于我的主打:
from snake import Snake
snake = Snake()
game_is_one = True
while game_is_one == True:
snake.move()
if snake.head.distance(food) < 15:
print("jaa")
这个在我的snake.py中:
from turtle import Turtle
class Snake:
snake = []
def __int__(self, color, shape, head):
self.color = color
self.shape = shape
self.head = self.snake[0]
我收到以下错误: 属性错误:“蛇”对象没有属性“头”
所以我认为距离(食物)部分没有问题,因为它找不到我的头部物体。 但我不知道如何解决这个问题。 有人可以帮我吗?
正如评论所指出的,类初始化器应该是
__init__
,而不是 __int__
。此外,当您使用类对象定义变量时,您需要为放入 __init__
函数中的变量定义一些起始值。
因此,您需要编写:
snake = Snake("blue", "round", head)
,而不是:“snake = Snake()”(我举了一些模拟输入值作为示例,但您明白了)。