Member 14141186 Ответов: 2

Как я могу создать основной внутренний класс?


Я пытаюсь научиться использовать основную функцию внутри класса, но так как я не уверен, как ее использовать, то мой код не дает никакого результата. Насколько я узнал, мне нужно определить def main под методом __init__, чтобы написать name == main, но проблема в том, что я не знаю, как написать "def getRoom" и другую функцию внутри этой основной функции. Могу ли я получить какое-то предложение, как я могу написать правильную программу?

Мой код приведен ниже:

class Hotel:
    def __init__(self,room,catagory):
        
        if type(catagory) != str:
            raise TypeError()
        if room<0 or room >5:
            raise ValueError()
        self.room = room
        self.catagory = catagory
        self.catagories = {"A":"Elite","B":"Economy","C":"Regular"}
        self.rooms = ["0","1","2","3","4","5"]
        

    def getRoom(self):
        return self.room

    def getCatagory(self):
        
        return self.catagories.get(self.catagory)
    def __str__(self):
        return "%s and %s"%(self.rooms[self.room],self.catagories.get(self.catagory))
if (__name__== "__ main__"):
    r = Hotel ()
    print (r)
    try:
        room1 = Hotel(2,1)
        print (room1)
    except TypeError: 
        print("Error")
    try:
        room2= Hotel(1,"A")
        print (room2)
    except ValueError:
        print ("mistake")


Что я уже пробовал:

Я попытался создать " def main ()", но это не сработало с моим "def getRoom" и
"деф getCatagory"

2 Ответов

Рейтинг:
2

Richard MacCutchan

Вы должны пойти в Учебник по Python — документация по Python 3.7.2[^] и проработайте его, где будут объяснены все ваши проблемы.


Рейтинг:
1

CPallini

Вы должны спросить (себя) не "как" но - почему?. Python - это не Java[^].