代码如下 : #一次模拟汽车的简单尝试### 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,miles): self.odometer_reading+=miles class Battery(): def __init__(self,battery_size=70): self.battery_size=battery_size def describe_battery(self): print("This car has a "+str(self.battery_size)+"-kWh battery.") class Electriccar(Car): def __init__(self,make,model,year): super().__init__(make,model,year) self.battery_size=Battery() my_tesla=Electriccar('tesla','model s',2016) print(my_tesla.get_descriptive_name()) my_tesla.battery.describe_battery()
python版本:3.9
运行结果:
Traceback (most recent call last):
File "C:\Users\老大\Desktop\python\electric_car_1.py", line 31, in <module>
my_tesla.battery.describe_battery()
AttributeError: 'Electriccar' object has no attribute 'battery'