auto.py 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. # Класс Automobile содержит общие данные
  2. # об автомобиле на складе
  3. class Automobile:
  4. def __init__(self, make, model, mileage, price) -> None:
  5. self.__make = make
  6. self.__model = model
  7. self.__mileage = mileage
  8. self.__price = price
  9. def set_make(self, make):
  10. self.__make = make
  11. def set_model(self, model):
  12. self.__model = model
  13. def set_mileage(self, mileage):
  14. self.__mileage = mileage
  15. def set_price(self, price):
  16. self.__price = price
  17. def get_make(self):
  18. return self.__make
  19. def get_model(self):
  20. return self.__model
  21. def get_mileage(self):
  22. return self.__mileage
  23. def get_price(self):
  24. return self.__price
  25. # Класс Car представляет легковой автомобиль.
  26. # Он является подклассом класса Automobile.
  27. class Car(Automobile):
  28. def __init__(self, make, model, mileage, price, doors):
  29. Automobile.__init__(self, make, model, mileage, price)
  30. self.__doors = doors
  31. def set_doors(self, doors):
  32. self.__doors = doors
  33. def get_doors(self):
  34. return self.__doors
  35. # Класс Truck представляет пикап.
  36. # Он является подклассом класса Automobile.
  37. class Truck(Automobile):
  38. def __init__(self, make, model, mileage, price, drive_type):
  39. Automobile.__init__(self, make, model, mileage, price)
  40. self.__drive_type = drive_type
  41. def set_drive_type(self, drive_type):
  42. self.__drive_type = drive_type
  43. def get_drive_type(self):
  44. return self.__drive_type
  45. # Класс SUV представляет джип.
  46. # Он является подклассом класса Automobile.
  47. class SUV(Automobile):
  48. def __init__(self, make, model, mileage, price, pass_cap):
  49. Automobile.__init__(self, make, model, mileage, price)
  50. self.__pass_cap = pass_cap
  51. def set_pass_cap(self, pass_cap):
  52. self.__pass_cap = pass_cap
  53. def get_pass_cap(self):
  54. return self.__pass_cap
  55. def main():
  56. used_car = Car('Audi', 2007, 12500, 21500.0, 4)
  57. truck = Truck('Toyota', 2002, 4000, 12000.0, '4WD')
  58. suv = SUV('Volvo', 2000, 30000, 18500.0, 5)
  59. # Показать данные легкового авто.
  60. print('Данный легковой автомобиль имеется на складе.')
  61. print('Изготовитель:', used_car.get_make())
  62. print('Модель:', used_car.get_model())
  63. print('Пробег:', used_car.get_mileage())
  64. print('Цена:', used_car.get_price())
  65. print('Количество дверей:', used_car.get_doors())
  66. print()
  67. # Показать данные пикапа.
  68. print('Данный пикап имеется на складе.')
  69. print('Изготовитель:', truck.get_make())
  70. print('Модель:', truck.get_model())
  71. print('Пробег:', truck.get_mileage())
  72. print('Цена:', truck.get_price())
  73. print('Тип привода:', truck.get_drive_type())
  74. print()
  75. # Показать данные джипа.
  76. print('Данный пикап имеется на складе.')
  77. print('Изготовитель:', suv.get_make())
  78. print('Модель:', suv.get_model())
  79. print('Пробег:', suv.get_mileage())
  80. print('Цена:', suv.get_price())
  81. print('Пассажирская вместимость:', suv.get_pass_cap())
  82. print()
  83. if __name__ == "__main__":
  84. main()