楼主: yaoyinuo888
1035 4

[问答] 下面的代码哪里错了,按书上一模一样编的 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

30%

还不是VIP/贵宾

-

威望
0
论坛币
1317 个
通用积分
0
学术水平
2 点
热心指数
2 点
信用等级
2 点
经验
1341 点
帖子
102
精华
0
在线时间
140 小时
注册时间
2016-6-26
最后登录
2022-2-8

楼主
yaoyinuo888 在职认证  发表于 2017-12-18 11:49:14 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
LZ小白,刚开始学Python,求教一下下面的代码哪里错了,最好能告诉我原理,因为我是按书上说的编的。
class Car():
        def __init__(self,make,model,year):
                self.make = make
                self.model = model
                self.year = year
                self.odometer_reading = 233
        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
"""
my_new_car=Car("audi","a4",2016)
print(my_new_car.get_descriptive_name())
my_new_car.update_odometer(23)
my_new_car.read_odometer()
"""
class ElectricCar(Car):
        def __int__(self,make,model,year):
                super().__int__(make,model,year)
                self.battery_size = 70
        def describe_battery(self):
                print("this car has a "+str(self.battery_size)+"-kwh battery.")

my_tesla = ElectricCar('tesla',"model 's",2016)
print(my_tesla.get_descriptive_name())
my_tesla.describe_battery()
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:一模一样 descriptive increment Electric describe

1111.png (56.15 KB)

1111.png

回帖推荐

Kun806 发表于3楼  查看完整内容

class Car(): def __init__(self,make,model,year,battery_size): self.make = make self.model = model self.year = year self.odometer_reading = 233 self.battery_size = battery_size def get_descriptive_name(self): long_name = str(self.year)+" "+self.make+' '+self.model return long_name.title() def read_odometer(self): ...

沙发
eeabcde 发表于 2017-12-21 13:04:50
是不是在self里没有定义battery_size?

藤椅
Kun806 学生认证  发表于 2017-12-21 16:26:03
class Car():
    def __init__(self,make,model,year,battery_size):
        self.make = make
        self.model = model
        self.year = year
        self.odometer_reading = 233
        self.battery_size = battery_size
    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
"""
my_new_car=Car("audi","a4",2016)
print(my_new_car.get_descriptive_name())
my_new_car.update_odometer(23)
my_new_car.read_odometer()
"""
class ElectricCar(Car):
    def __init__(self,make,model,year):
        Car.__init__(self,make,model,year,70)
        #super().__int__(make,model,year)
    def describe_battery(self):
        print("this car has a "+str(self.battery_size)+"-kwh battery.")

my_tesla = ElectricCar("tesla",r"model 's",2016)
print(my_tesla.get_descriptive_name())
my_tesla.describe_battery()

板凳
Kun806 学生认证  发表于 2017-12-21 16:29:28
class ElectricCar(Car):
        def __int__(self,make,model,year):
                super().__int__(make,model,year)
                self.battery_size = 70

这个类定义的时候,应该是def  __init__(self,*args):  而不是int,表示初始加载(自动运行的类方法)。

然后我给你传了一份代码,是要说明,子类一般是要继承超类(或者基类)的属性,你那样写没错,但不够完善
已有 1 人评分经验 论坛币 收起 理由
残阳_等待 + 60 + 20 精彩帖子

总评分: 经验 + 60  论坛币 + 20   查看全部评分

报纸
yaoyinuo888 在职认证  发表于 2017-12-26 16:26:50
Kun806 发表于 2017-12-21 16:29
class ElectricCar(Car):
        def __int__(self,make,model,year):
                super().__int__ ...
谢谢了,楼主看好几天都没有人回复,以为帖子沉了,就没来看了。今天才上

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-21 12:11