首页 > 解决方案 > 类型错误:接受 4 个位置参数,但给出了 5 个

问题描述

我试图执行这段代码。它显示了这个错误

类型错误:接受 4 个位置参数,但给出了 5 个

class Car:
    def __init__(self,make,model,year):
        self.make = make`
        self.model = model
        self.year = year
        self.odometer_reading = 0

    def get_descriptive_name(self):
        long_name = str(self.year) + ' ' + self.make +' ' + self.model
        return long_name.title()

    def read_odometer(self):
        print("This car has" + str(self.odometer_reading) +"miles on it ")

# def update_odometer(self,mileage):
#        if (mileage>= self.odometer_reading):
#            self.odometer_reading = mileage
#        else:
#            print("You can't roll back an odometer ")

#def increment_odometer(self):
#     self.odometer_reading += miles

class ElectricCar(Car):
    def __init__(self,make,model,year):
        super().__init__(self,make,model,year)
        self.battery_size =70

    def describe_battery(self):
        print("This car has a " + str(self.battery_size) +"kWh battery")


myTesla = ElectricCar('Tesla','model_s',2016)

print(myTesla.get_descriptive_name())
myTesla.describe_battery()

当我尝试执行它时,出现以下错误消息

Traceback (most recent call last):
  File "C:\Users\Predator\PycharmProjects\456\main.py", line 34, in <module>
    myTesla = ElectricCar('Tesla','model_s',2016)
  File "C:\Users\Predator\PycharmProjects\456\main.py", line 27, in __init__
    super().__init__(self,make,model,year)
TypeError: __init__() takes 4 positional arguments but 5 were given

Process finished with exit code 1

我尝试了几次调整,但都没有奏效。请在这种情况下帮助我。

标签: pythonoop

解决方案


推荐阅读