TelenkovDmitry 1 year ago
parent
commit
38ae0bb193
2 changed files with 118 additions and 1 deletions
  1. 117 0
      books/python/auto.py
  2. 1 1
      books/python/main.py

+ 117 - 0
books/python/auto.py

@@ -0,0 +1,117 @@
+# Класс Automobile содержит общие данные 
+# об автомобиле на складе
+
+class Automobile:
+
+    def __init__(self, make, model, mileage, price) -> None:
+        self.__make = make
+        self.__model = model
+        self.__mileage = mileage
+        self.__price = price
+
+    def set_make(self, make):
+        self.__make = make
+
+    def set_model(self, model):
+        self.__model = model
+
+    def set_mileage(self, mileage):
+        self.__mileage = mileage
+
+    def set_price(self, price):
+        self.__price = price
+
+    def get_make(self):
+        return self.__make
+    
+    def get_model(self):
+        return self.__model
+    
+    def get_mileage(self):
+        return self.__mileage
+    
+    def get_price(self):
+        return self.__price
+    
+
+# Класс Car представляет легковой автомобиль.
+# Он является подклассом класса Automobile.
+    
+class Car(Automobile):
+
+    def __init__(self, make, model, mileage, price, doors):
+        Automobile.__init__(self, make, model, mileage, price)
+        self.__doors = doors
+
+    def set_doors(self, doors):
+        self.__doors = doors
+
+    def get_doors(self):
+        return self.__doors
+    
+
+# Класс Truck представляет пикап.
+# Он является подклассом класса Automobile.
+    
+class Truck(Automobile):
+
+    def __init__(self, make, model, mileage, price, drive_type):
+        Automobile.__init__(self, make, model, mileage, price)
+        self.__drive_type = drive_type
+
+    def set_drive_type(self, drive_type):
+        self.__drive_type = drive_type
+
+    def get_drive_type(self):
+        return self.__drive_type
+
+# Класс SUV представляет джип.
+# Он является подклассом класса Automobile.
+
+class SUV(Automobile):
+
+    def __init__(self, make, model, mileage, price, pass_cap):
+        Automobile.__init__(self, make, model, mileage, price)
+        self.__pass_cap = pass_cap
+
+    def set_pass_cap(self, pass_cap):
+        self.__pass_cap = pass_cap
+
+    def get_pass_cap(self):
+        return self.__pass_cap
+
+
+def main():
+    used_car = Car('Audi', 2007, 12500, 21500.0, 4)
+    truck = Truck('Toyota', 2002, 4000, 12000.0, '4WD')
+    suv = SUV('Volvo', 2000, 30000, 18500.0, 5)
+
+    # Показать данные легкового авто.
+    print('Данный легковой автомобиль имеется на складе.')
+    print('Изготовитель:', used_car.get_make())
+    print('Модель:', used_car.get_model())
+    print('Пробег:', used_car.get_mileage())
+    print('Цена:', used_car.get_price())
+    print('Количество дверей:', used_car.get_doors())
+    print()
+
+    # Показать данные пикапа.
+    print('Данный пикап имеется на складе.')
+    print('Изготовитель:', truck.get_make())
+    print('Модель:', truck.get_model())
+    print('Пробег:', truck.get_mileage())
+    print('Цена:', truck.get_price())
+    print('Тип привода:', truck.get_drive_type())
+    print()
+
+    # Показать данные джипа.
+    print('Данный пикап имеется на складе.')
+    print('Изготовитель:', suv.get_make())
+    print('Модель:', suv.get_model())
+    print('Пробег:', suv.get_mileage())
+    print('Цена:', suv.get_price())
+    print('Пассажирская вместимость:', suv.get_pass_cap())
+    print()
+
+if __name__ == "__main__":
+    main()

+ 1 - 1
books/python/main.py

@@ -82,7 +82,7 @@ def main():
     # Сериализация объектов 
     # Сериализация объектов 
     # cellphone_serial()
     # cellphone_serial()
 
 
-
+    pass
 
 
 
 
 if __name__ == '__main__':
 if __name__ == '__main__':