对面向对象程序这个该怎么实现

有一个汽车租赁系统,各车型收费如下:
车型
奥迪A4 红旗H5 吉利博越
日租金 500 400 200
设计一个父类(Car),有name属性和price方法。设计三个子类分别继承自父类(Car),重写init和price方法。然后从键盘接收用户选择的车型和租用的天数,并输出租车需要支付的费用。(多态)

结果

img

class car_base:
    def __init__(self):
        self.price = None
        self.name = None

    def set_car_name(self, name):
        self.name = name

    def set_price(self, price):
        self.price = price

    def get_total_price(self, day):
        return self.price * int(day)


class aodi(car_base):
    def __init__(self):
        self.name = '奥迪'

    def set_price(self, price):
        self.price = price


class jili(car_base):
    def __init__(self):
        self.name = '吉利'

    def set_price(self, price):
        self.price = price


class hongqi(car_base):
    def __init__(self):
        self.name = '红旗'

    def set_price(self, price):
        self.price = price

运行代码

from Commom.Car import hongqi, car_base, aodi, jili

if __name__ == '__main__':
    name = input("请输入汽车品牌:")
    car = car_base()
    if name == '红旗':
        car = hongqi()
        car.set_price(400)
    elif name == '奥迪':
        car = aodi()
        car.set_price(500)
    elif name == '吉利':
        car = jili()
        car.set_price(200)
    elif name.upper() == 'Q':
        sys.exit()
    else:
        print('暂时未收录此车型')
    days = input('请输入租用天数:')
    total = car.get_total_price(days)
    print(f'您需要支付{total}费用')