如何在 Python 中修复此 AttributeError? [已关闭]

问题描述 投票:0回答:1

我阅读了很多其他问题和答案,但我仍然无法修复我的 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]

我收到以下错误: 属性错误:“蛇”对象没有属性“头”

所以我认为距离(食物)部分没有问题,因为它找不到我的头部物体。 但我不知道如何解决这个问题。 有人可以帮我吗?

python class attributeerror
1个回答
0
投票

正如评论所指出的,类初始化器应该是

__init__
,而不是
__int__
。此外,当您使用类对象定义变量时,您需要为放入
__init__
函数中的变量定义一些起始值。

因此,您需要编写:

snake = Snake("blue", "round", head)
,而不是:“snake = Snake()”(我举了一些模拟输入值作为示例,但您明白了)。

© www.soinside.com 2019 - 2024. All rights reserved.