task.py 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. class Person:
  2. def __init__(self, name, age):
  3. self.name = name
  4. self.age = age
  5. def display_person_info(self):
  6. print(f"Person: {self.name}, {self.age}")
  7. class Company:
  8. def __init__(self, name, city):
  9. self.company_name = name
  10. self.location = city
  11. def display_company_info(self):
  12. print(f"Company: {self.company_name}, {self.location}")
  13. class Employee:
  14. def __init__(self, name, age, company, city):
  15. self.personal_data = Person(name, age)
  16. self.work = Company(company, city)
  17. # ````````````````````````````````````````````````````````````````
  18. class Task:
  19. def __init__(self, name, description, status=False):
  20. self.name = name
  21. self.description = description
  22. self.status = status
  23. def display(self):
  24. print(f"{self.name} {'(Сделана)' if self.status else '(Не сделана)'}")
  25. class TaskList:
  26. def __init__(self):
  27. self.tasks = []
  28. def add_task(self, task: Task):
  29. self.tasks.append(task)
  30. def remove_task(self, task: Task):
  31. self.tasks.remove(task)
  32. class TaskManager:
  33. def __init__(self, task_list:TaskList):
  34. self.task_list = task_list
  35. def mark_done(self, task:Task):
  36. task.status = True
  37. def mark_undone(self, task:Task):
  38. task.status = False
  39. def show_tasks(self):
  40. for task in self.task_list.tasks:
  41. task.display()
  42. # ````````````````````````````````````````````````````````````````
  43. class Triangle:
  44. def __init__(self, a, b, c):
  45. self.a = a
  46. self.b = b
  47. self.c = c
  48. def is_exists(self):
  49. return (self.a < (self.b + self.c)) and \
  50. (self.b < (self.a + self.c)) and \
  51. (self.c < (self.a + self.b))
  52. def is_equilateral(self):
  53. return self.a == self.b == self.c
  54. def is_isosceles(self):
  55. return self.is_exists() and ((self.a == self.b) or (self.a == self.c) or (self.b == self.c))
  56. # ````````````````````````````````````````````````````````````````
  57. class Config:
  58. pass
  59. def create_instance(number: int):
  60. obj = Config()
  61. for i in range(1, number+1):
  62. name = 'attribute' + str(i)
  63. value = 'value' + str(i)
  64. setattr(obj, name, value)
  65. return obj
  66. def main():
  67. # config = create_instance(3)
  68. # print(config.__dict__)
  69. triangle = Triangle(5, 16, 5)
  70. print(f"Is Triangle exist: {triangle.is_exists()}")
  71. print(f"Is Equilateral: {triangle.is_equilateral()}")
  72. print(f"Is Isosceles: {triangle.is_isosceles()}")
  73. if __name__ == '__main__':
  74. main()