Как я могу поймать сообщение об ошибке, если пользователь дает неправильный ввод (без использования isinstance)?
Я написал код, чтобы поймать свое сообщение об ошибке с помощью try and except (я хочу написать его без использования isinstance), и я получаю сообщение об ошибке, когда входные данные не являются целым числом. Проблема в том, что программа выдает мне сообщение об ошибке, даже если входные данные являются допустимым целым числом. Пожалуйста, дайте мне несколько советов, чтобы заставить его работать. Мой код приведен ниже:
class Hotel: def __init__(self,room,catagory): if room != int: raise TypeError () 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.catagory return self.catagories.get(self.catagory) def __str__(self): return "%s and %s"%(self.rooms[self.room],self.catagories.get(self.catagory)) try: room1 = Hotel(a,"A") room2 = Hotel(1,"A") except: print("there's an error")
Я ценю вашу помощь.
Что я уже пробовал:
Я пытался использовать предложение об исключении раньше, но это не сработало.