Advertisement
Guest User

Untitled

a guest
Oct 19th, 2019
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.11 KB | None | 0 0
  1. #// BEGIN_TODO [team] University Teams (1 point)
  2. from copy import deepcopy
  3.  
  4. class Team:
  5.  
  6. def __init__(self, name_id = '', team =[], budget = 0) -> None:
  7. self.name_id = name_id
  8. self.team = team
  9. self.budget = budget
  10.  
  11. def add_member(self, member) -> None:
  12. if member not in self.team:
  13. self.team = self.team.append(member)
  14. if isinstance(member, Student):
  15. budget -= 2880
  16. if isinstance(member, Teacher):
  17. budget -= 7200
  18. if isinstance(member, Researcher):
  19. budget -= 7200
  20.  
  21. def remove_member(self, member) -> None:
  22. if member in self.team:
  23. self.team.delete(member)
  24. if isinstance(member, Student):
  25. budget += 2880
  26. if isinstance(member, Teacher):
  27. budget += 7200
  28. if isinstance(member, Researcher):
  29. budget += 7200
  30.  
  31. def spend_budget(self, amount: int) -> bool:
  32. if self.budget >= amount:
  33. self.budget -= amount
  34. return True
  35. else:
  36. return False
  37.  
  38. def __str__(self) -> str:
  39. sorted_list = deepcopy(self.team)
  40. sorted_list.sort()
  41.  
  42. for name in sorted_list:
  43. return "{}, ".format(sorted_list[name])
  44.  
  45. class ResearchTeam(Team):
  46.  
  47. def __repr__(self) -> None:
  48. return self.name
  49.  
  50. def create_product(self) -> bool:
  51. if self.budget - (20000 * len(self.team)) >= 0:
  52. self.budget -= (20000 * len(self.team))
  53. return True
  54. else:
  55. return False
  56.  
  57. class CourseTeam(Team):
  58.  
  59. def __repr__(self) -> None:
  60. return self.name
  61.  
  62. def __init__(self, name_id = '', team = [], budget = 0, lead_teacher = '') -> None:
  63. Team.__init__(name_id, team, budget)
  64. if isinstance(lead_teacher, Teacher):
  65. pass
  66. else:
  67. raise TypeError("Lead teacher should be an instance of the Teacher class")
  68.  
  69.  
  70. #// END_TODO [team]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement