|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
class Car():
def __init__(self,make,model,year):
self.make = make
self.model = model
self.year = year
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.")
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.")
def get_range(self):
if self.battery_size == 70:
range = 240
elif self.battery_size == 85:
range = 270
message = "This car can go approximately " + str(range)
message += "miles on a full charge."
print(message)
def upgrade_battery(self):
if self.battery_size != 85:
self.battery_size = 85
print("This car can go approximately" + " " + str(self.battery-size))
class ElectricCar(Car):
def __init__(self,make,model,year):
super().__init__(make,model,year)
self.battery = Battery()
my_tesla = ElectricCar('tesla','mosel s',2016)
print(my_tesla.get_descriptive_name())
my_tesla.battery.describe_battery()
my_tesla.battery.get_range()
my_tesla.battery.upgrade_battery()
Traceback (most recent call last):
File "C:/Users/Administrator/AppData/Local/Programs/Python/Python36/car.py", line 50, in <module>
my_tesla.battery.upgrade_battery()
File "C:/Users/Administrator/AppData/Local/Programs/Python/Python36/car.py", line 35, in upgrade_battery
print("This car can go approximately" + " " + str(self.battery-size))
AttributeError: 'Battery' object has no attribute 'battery'
问题:属性class Battery():
def __init__(self,battery_size = 70):
self.battery_size = battery_size 我设置过了啊,怎么对象没有属性呢?
|
|