zoukankan      html  css  js  c++  java
  • 记录Python类与继承的一个错误

    今天在学python的类与继承的时候遇到一个错误,原来是自己在ctrl+c  ctrl+v的时候漏了一个括号

     1 class Car():
     2     def __init__(self,make,year,model):
     3         self.make=make
     4         self.model=model
     5         self.year=year
     6         self.odometer_reading=0
     7     def get_descriptive_name(self):
     8         long_name=str(self.year)+" "+self.make+" "+self.model
     9         return long_name.title()
    10     def read_odometer(self):
    11         print("This car has "+str(self.odometer_reading)+"miles on it")
    12 
    13     def update_odometer(self,mileage):
    14         if mileage>=self.odometer_reading:
    15             self.odometer_reading=mileage
    16         else:
    17             print("You can't roll back an odometer")
    18     def increment_odometer(self,miles):
    19         self.odometer_reading+=miles
    20 class ElectricCar(Car):
    21     def __init__(self,make,model,year):
    22         super.__init__(make,year,model)
    23 my_tesla=ElectricCar('tesla','model s',2016)
    24 print(my_tesla.get_descriptive_name())

    运行时出现了以下的错误

    super.__init__(make,year,model)

    TypeError: descriptor '__init__' requires a 'super' object but received a 'str'

    原来是22行的super()那里少了一个括号。

  • 相关阅读:
    cookie和session区别
    jsp编写页面时常见错误提示
    web处理jsp文件的三个阶段
    JSP页面元素
    B/S与C/S区别
    url组成部分
    css选择器
    ol,ul,dl,table标签的基本语法
    剑指offer-把二叉树打印成多行
    剑指offer-从上往下打印二叉树
  • 原文地址:https://www.cnblogs.com/Guhongying/p/10011389.html
Copyright © 2011-2022 走看看