专栏首页用户2119464的专栏python入门(七)计算不同交通工具的行进耗时(类的用法和继承)

python入门(七)计算不同交通工具的行进耗时(类的用法和继承)

class Vehicle:
    def __init__(self, speed = 60.0):
        self.speed = speed
        #下一个函数需要这个值

    def drive(self, distance):
        print("need %f hour" % (distance / self.speed))


class Bike(Vehicle):
    pass


class Car(Vehicle):
    def __init__(self, speed, fuel):
        Vehicle.__init__(self, speed)
        self.fuel = fuel


    def drive(self, distance):
        Vehicle.drive(self, distance)
        print("need %f fuels" % (distance * self.fuel))


b = Bike(15.0)
c = Car(80.0, 0.012)
b.drive(100.0)
c.drive(100.0)

以上程序中所用到的知识点如下:

  • __init__函数

#类创建的时候自动调用,用来初始化类

  • 类中的self

#类方法的第一个参数必须为self #调用类方法时,不需要额外提供self这个参数的值 #self在类方法中的值,就是你调用的对象本身

  • 默认参数

用法

def 函数名(name = 默认值):

函数体

#当没有提供参数,函数使用默认值 #若提供参数,优先使用提供的 #函数有多个参数时,默认参数必须在末尾

  • 类的继承

用法:子类名(父类名) #父类中有的属性和方法,子类都会有 #不需要额外功能的子类,用pass在类中保留空块

  • pass语句

#空语句,什么也不做 #用来保证格式的完整性

  • 子类同名函数

#子类同名函数会对父类覆盖

  • 覆盖后父类的调用

用法:父类名.函数名() #获得该方法作为父类所具有的功能 #方法必须提供self的参数

  • 类的实例化

用法:mc = MyClass()

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • js基础知识

    最主要区别是函数名称 在函数表达式中可省略函数声明,从而创建匿名函数

    星辉
  • js实现限定范围拖拽

    星辉
  • js实现磁性吸附

    星辉
  • Selenium2+python自动化52-unittest执行顺序

    前言 很多初学者在使用unittest框架时候,不清楚用例的执行顺序到底是怎样的。对测试类里面的类和方法分不清楚,不知道什么时候执行,什么时候不执行。 本篇通过...

    上海-悠悠
  • Python高级进阶#006 pyqt5类封装

    刘金玉编程
  • 数据结构-顺序表的定义及python实现

    1 顺序表的定义 线性表 是具有相同数据类型的n个数据元素的有限序列。 顺序表 使用组地址连续的存储单元、依次存储线性表中的数据元素,从而使得逻辑上相邻的两...

    致Great
  • 第三天:创建型模式--建造者模式

    创建一个由多个部分构成的对象,而且它的构成需要一步接一步地完成,只有当各个部分都创建好后,这个对象才算创建完成。

    喵叔
  • 11 Python 基础: 知识巩固,实现一个简易学生管理系统

    首先,我们定义了一个LoginModule类,此为登录模块,主要功能就是定义账号属性【用户名,密码】,然后定义一个登录login方法实现验证用户名和密码是否正确...

    小Gy
  • python font的处理

    上面的程序时可以正常运行的,其中被高亮的代码是会出错的地方,课本上的源代码是self.font=pygame.font.Sysfont(None,48),但是编...

    py3study
  • PyQt 5信号与槽的几种高级玩法

    在Qt中,每一个QObject对象和PyQt中所有继承自QWidget的控件(这些都是QObject的子对象)都支持信号与槽机制。当信号发射时,连接的槽函数将会...

    博文视点Broadview

扫码关注云+社区

领取腾讯云代金券