[Python] 8.9 LAB: Car value (classes)

Discussão em 'Python' iniciado por Stack, Fevereiro 8, 2025.

  1. Stack

    Stack Membro Participativo

    Complete the Car class by creating an attribute purchase_price (type int) and the method print_info() that outputs the car's information.

    Ex: If the input is: 2011 18000 2018

    where 2011 is the car's model year, 18000 is the purchase price, and 2018 is the current year, then print_info() outputs: Car's information: Model year: 2011 Purchase price: 18000 Current value: 5770

    Note: print_info() should use three spaces for indentation.

    Code that was provided below

    class Car:
    def __init__(self):
    self.model_year = 0
    # TODO: Declare purchase_price attribute

    self.current_value = 0

    def calc_current_value(self, current_year):
    depreciation_rate = 0.15
    # Car depreciation formula
    car_age = current_year - self.model_year
    self.current_value = round(self.purchase_price * (1 - depreciation_rate) ** car_age)

    # TODO: Define print_info() method to output model_year, purchase_price, and current_value


    if __name__ == "__main__":
    year = int(input())
    price = int(input())
    current_year = int(input())

    my_car = Car()
    my_car.model_year = year
    my_car.purchase_price = price
    my_car.calc_current_value(current_year)
    my_car.print_info()



    What I tried but I don't know what I'm doing wrong. I keep getting "TypeError: print_info() takes 0 positional arguments but 1 was given."

    class Car:
    def __init__(self):
    self.model_year = 0
    # TODO: Declare purchase_price attribute
    self.purchase_price = ''
    self.current_value = 0

    def calc_current_value(self, current_year):
    depreciation_rate = 0.15
    # Car depreciation formula
    car_age = current_year - self.model_year
    self.current_value = round(self.purchase_price * (1 - depreciation_rate) ** car_age)

    # TODO: Define print_info() method to output model_year, purchase_price, and current_value
    def print_info():
    print('Car' + "'" + 's', 'information\n')
    print('Model year:', self.model_year)
    print('Purchase price:', self.purchase_price)
    print('Current value:', self.current_value)

    if __name__ == "__main__":
    year = int(input())
    price = int(input())
    current_year = int(input())

    my_car = Car()
    my_car.model_year = year
    my_car.purchase_price = price
    my_car.calc_current_value(current_year)
    my_car.print_info()

    Continue reading...

Compartilhe esta Página