Guest User

Untitled

a guest
Dec 13th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.47 KB | None | 0 0
  1. import random
  2.  
  3. class Parking:
  4. def __init__(self):
  5. self.lots = []
  6.  
  7. def create_parking(self, floor, lot_size, lot_num):
  8. self.lots.append([len(self.lots), floor, lot_size, lot_num, 0]) # id, floor, lot_size, lot_num, vehicle_num
  9.  
  10. def find_empty_lot(self, target_lot_size):
  11. for i in range(len(self.lots)):
  12. (id, floor, lot_size, lot_num, vehicle_num) = self.lots[i]
  13. if lot_size == target_lot_size and lot_num > vehicle_num:
  14. return id
  15. return None
  16.  
  17. def park(self, target_lot_size, target_id):
  18. for i in range(len(self.lots)):
  19. (id, floor, lot_size, lot_num, vehicle_num) = self.lots[i]
  20. if id == target_id:
  21. self.lots[i][4] += 1
  22. return None
  23.  
  24. def exit(self, target_lot_size):
  25. random.shuffle(self.lots)
  26. for i in range(len(self.lots)):
  27. (id, floor, lot_size, lot_num, vehicle_num) = self.lots[i]
  28. if lot_size == target_lot_size and vehicle_num > 0:
  29. self.lots[i][4] -= 1
  30. return None
  31.  
  32. def show_status(self):
  33. for i in range(len(self.lots)):
  34. print(self.lots[i])
  35.  
  36. if __name__=='__main__':
  37. # test
  38. parking = Parking()
  39. parking.create_parking("2F", "S", 3)
  40. parking.create_parking("1F", "S", 3)
  41. parking.show_status()
  42. id = parking.find_empty_lot("S")
  43. parking.park('S',id)
  44. parking.show_status()
  45. parking.exit('S')
  46. parking.show_status()
Add Comment
Please, Sign In to add comment