oop_3 homework
parent
7d79065b89
commit
5fc185d629
|
@ -0,0 +1,18 @@
|
||||||
|
Домашнее задание 3.
|
||||||
|
|
||||||
|
Создайте класс `Car`, который имеет атрибуты:
|
||||||
|
`make` (марка автомобиля),
|
||||||
|
`model` (модель автомобиля) и
|
||||||
|
`year` (год выпуска).
|
||||||
|
Дайте им также метод `display_info()`, который выводит
|
||||||
|
информацию о машине (марка, модель и год).
|
||||||
|
|
||||||
|
Создайте несколько объектов класса `Car`
|
||||||
|
с разными характеристиками и вызовите метод
|
||||||
|
`display_info()` для каждого из них.
|
||||||
|
|
||||||
|
Добавьте метод `calculate_age()` в класс `Car`,
|
||||||
|
который будет рассчитывать и возвращать возраст
|
||||||
|
автомобиля на текущий год.
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
from datetime import datetime as dt
|
||||||
|
|
||||||
|
|
||||||
|
class Car:
|
||||||
|
def __init__(self, **kwargs) -> None:
|
||||||
|
self.make = kwargs.get("make")
|
||||||
|
self.model = kwargs.get("model")
|
||||||
|
self.year = kwargs.get("year")
|
||||||
|
|
||||||
|
def display_info(self):
|
||||||
|
return (x for x in (self.make, self.model, self.year) if x is not None)
|
||||||
|
|
||||||
|
def calculate_age(self):
|
||||||
|
if self.year is None:
|
||||||
|
return "Неизвестно"
|
||||||
|
return dt.today().year - self.year
|
||||||
|
|
||||||
|
|
||||||
|
cars = (
|
||||||
|
Car(make="Ваз", model="Нива", year=2000),
|
||||||
|
Car(make="Mitsubishi", model="Colt", year=2007),
|
||||||
|
Car(make="Газ", model="Вогла"),
|
||||||
|
Car(make="БРДМ", year=1993),
|
||||||
|
)
|
||||||
|
|
||||||
|
for car in cars:
|
||||||
|
print(*car.display_info())
|
||||||
|
print("возраст тс:", car.calculate_age())
|
||||||
|
print()
|
Loading…
Reference in New Issue