第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

TypeError:創(chuàng)建對象實例時無法調(diào)用“ NoneType”對象

TypeError:創(chuàng)建對象實例時無法調(diào)用“ NoneType”對象

胡子哥哥 2021-03-13 15:11:17
我正在嘗試使用下一堂課:class GameStatus(object):"""Enum of possible Game statuses."""__init__ = NoneNotStarted, InProgress, Win, Lose = range(4)def getStatus(number):    return{        0: "NotStarted",        1: "InProgress",        2: "Win",        3: "Lose",        }在另一個類中(都在同一個py文件中)。在他的方法init的另一個類中,我做下一件事:class Game(object):"""Handles a game of minesweeper by supplying UI to Board object."""gameBoard = []gs = ''def __init__(self, board):    self.gameBoard = board    gs = GameStatus() //THIS IS THE LINE當(dāng)我嘗試運行游戲時,出現(xiàn)下一條錯誤消息:File "C:\Users\Dron6\Desktop\Study\Python\ex6\wp-proj06.py", line 423, in __init__gs = GameStatus()TypeError: 'NoneType' object is not callable我究竟做錯了什么?
查看完整描述

2 回答

?
桃花長相依

TA貢獻(xiàn)1860條經(jīng)驗 獲得超8個贊

您正在將GameStatus初始化程序設(shè)置為None:


class GameStatus(object):

    __init__ = None

不要那樣做 Python希望這是一種方法。如果您不想使用__init__方法,則根本不要指定它。最多將其設(shè)為空函數(shù):


class GameStatus(object):

    def __init__(self, *args, **kw):

        # Guaranteed to do nothing. Whatsoever. Whatever arguments you pass in.

        pass

如果要創(chuàng)建類似枚舉的對象,請查看如何在Python中表示“枚舉”?


對于Python 2.7,您可以使用:


def enum(*sequential, **named):

    enums = dict(zip(sequential, range(len(sequential))), **named)

    reverse = dict((value, key) for key, value in enums.iteritems())

    enums['reverse_mapping'] = reverse

    return type('Enum', (), enums)


GameStatus = enum('NotStarted', 'InProgress', 'Win', 'Lose')


print GameStatus.NotStarted          # 0

print GameStatus.reverse_mapping[0]  # NotStarted


查看完整回答
反對 回復(fù) 2021-03-31
  • 2 回答
  • 0 關(guān)注
  • 344 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號