鱼C论坛

 找回密码
 立即注册
查看: 1565|回复: 0

[技术交流] 求教Python子类init添加属性问题

[复制链接]
发表于 2020-8-22 21:45:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1、下面子类添加属性时提示错误

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 ("\nThis 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 ElectricCar(Car):
    """电动汽车的独特之处,初始化父类属性,再初始化电动汽车特有的属性"""
    def __init_(self,make,model,year,bbb):
        super().__init__(make,model,year)
        self.bbb = 0


    def describe_battery(self):
        """打印一条描述电瓶容量的消息"""
        print(self.bbb)
   

my_tesla= ElectricCar('audi','a4',2016)
my_tesla.describe_battery()




错误提示:
Traceback (most recent call last):
File "C:\Users\WJW\Desktop\Python\Car.py", line 47, in <module>
        my_tesla= ElectricCar('audi','a4',2016,99)
TypeError: __init__() takes 4 positional arguments but 5 were given



2、下面的程序和这个逻辑应该是一样的,但是运行正确

class AA():
    def __init__(self,a,b):
        self.a=0
        self.b=0
        print (str(b)+str(a))




class BB(AA):

    def __init__(self,a,b,c):
        super().__init__(a,b)
        self.c=0

        print( c + a + b )

        
a=AA(80,90)

b=BB(22,33,55)


运行结果
9080
3322
110

求大神解答,到底哪里出了问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-19 08:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表