Spaces:
Sleeping
Sleeping
File size: 1,111 Bytes
8e7d8ae |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# Stores data about classroom
class Room:
# ID counter used to assign IDs automatically
_next_room_id = 0
# Initializes room data and assign ID to room
def __init__(self, name, lab, number_of_seats):
# Returns room ID - automatically assigned
self.Id = Room._next_room_id
Room._next_room_id += 1
# Returns name
self.Name = name
# Returns TRUE if room has computers otherwise it returns FALSE
self.Lab = lab
# Returns number of seats in room
self.NumberOfSeats = number_of_seats
def __hash__(self):
return hash(self.Id)
# Compares ID's of two objects which represent rooms
def __eq__(self, other):
if not isinstance(other, self.__class__):
return False
return hash(self) == hash(other)
def __ne__(self, other):
# Not strictly necessary, but to avoid having both x==y and x!=y
# True at the same time
return not (self == other)
# Restarts ID assigments
@staticmethod
def restartIDs() -> None:
Room._next_room_id = 0
|