首页 > 解决方案 > AttributeError:“ChessBoard”对象没有属性“网格”

问题描述

点击这里查看代码图片

我不断收到一个属性错误,说我的对象没有属性网格。到目前为止,这是我课堂上的演示代码,它适用于演示。不知道出了什么问题,可能是我的环境吗?对python还是新手,所以如果答案很明显,请放轻松

class ChessBoard:
    white = (1,1,1)
    red = (1,.2,0)
    blue = (.1,.1,1)

    def _init_(self):
        self.grid = np.zeros((8,8,3))

    def render(self):
        plt.imshow(self.grid)

    def color_cell(self, row, col, color):
        self.grid[row, col] = color

board = ChessBoard()

board.render()

标签: python

解决方案


TLDR;您的init方法中有错字。你想要双下划线__init__

当前_init_被注册为类上的另一种方法。因此,当您创建时board = ChessBoard(),会调用默认构造函数,因此grid变量不会绑定到board

请不要发布您的代码的图像快照。将代码的相关部分粘贴到 SO


推荐阅读