类(class),可以继承基类以便形成具有自己独特属性的类,我们在面向对象的编程中,经常用到类及其继承,可以说没有什么不是类的,今天我们就来详细探讨一下在python中,类的继承是如何做的。

  1. 我们假设有一个类叫做point,顾名思义,point就是一个点,它有横坐标和纵坐标。我们在python中创建一个point类(书上说类名称都要开头字母大写,这是国际惯例)

  2. 最简单的继承类的方式是这样:只需要在生命类的时候加一个括号和基类

  3. 这种方法并没有声明该类的构造器,这样它会隐性调用基类的构造器,所以,在实例化的时候,也要注意基类的构造器需要哪些参数,不要出现这样的错误:这种错误容易发生是因为我们在子类的声明中并没有看到什么参数,在使用的时候就容易忘记基类中需要的参数

    Traceback (most recent call last):

    File "<pyshell#11>", line 1, in <module>

    a=point1()

    TypeError: __init__() takes exactly 3 arguments (1 given)

  4. 这样来用就没问题了。

  5. 类的继承一般情况下,我们都是要重写类的构造器,然后再调用基类的构造器,不然基类的构造器在这种情况下不会自动调用。应该这样写:类point2比基类增加了一个属性z

  6. 实例化:

  7. 我们看这样一个写法特别容易出错:你能看出哪里错了吗?错误代码:

    Traceback (most recent call last):

    File "<pyshell#50>", line 1, in <module>

    b=point2(1,2,3)

    File "<pyshell#45>", line 3, in __init__

    point.__init__(x,y)

    TypeError: unbound method __init__() must be called with point instance as first argument (got int instance instead)

Python 类的继承__init__() takes exactly 3 arguments (1 given)的更多相关文章

  1. Python类的继承(进阶5)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6411918.html 本文出自:[Edwin博客园] Python类的继承(进阶5) 1. python中什 ...

  2. 孤荷凌寒自学python第二十二天python类的继承

    孤荷凌寒自学python第二十二天python类的继承 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) python中定义的类可以继承自其它类,所谓继承的概念,我的理解 是,就是一个类B继承自 ...

  3. python 类定义 继承

    0 前言 系统:win7 64bit IDE : python(x,y) 2.7.6.1 IDE集成的解释器:Python 2.7.6 (default, Nov 10 2013, 19:24:18) ...

  4. 记录Python类与继承的一个错误

    今天在学python的类与继承的时候遇到一个错误,原来是自己在ctrl+c  ctrl+v的时候漏了一个括号 class Car(): def __init__(self,make,year,mode ...

  5. 简述 Python 类中的 __init__、__new__、__call__ 方法

    任何事物都有一个从创建,被使用,再到消亡的过程,在程序语言面向对象编程模型中,对象也有相似的命运:创建.初始化.使用.垃圾回收,不同的阶段由不同的方法(角色)负责执行. 定义一个类时,大家用得最多的就 ...

  6. python类、继承

    Python 是一种面向对象的编程语言.Python 中的几乎所有东西都是对象,拥有属性和方法.类(Class)类似对象构造函数,或者是用于创建对象的"蓝图". 一.python ...

  7. python类的继承和多态,获取对象信息

    继承 类的继承机制使得子类可以继承父类中定义的方法,拥有父类的财产,比如有一个Animal的类作为父类,它有一个eat方法: class Animal(object): def __init__(se ...

  8. day30 python类的继承,抽象类等

    Python之路,Day17 = Python基础17-面向对象入门 继承 class Student(People): pass print(Student.__bases__) # 查看 Stud ...

  9. python类的继承、多继承及其常用魔术方法

    继承 一个类可以派生出一个子类,这个子类可以使用父类的属性及方法,也可以在父类的基础上添加自己的独特属性或方法.属性和方法的继承的顺序是先从自己开始,找不到再去找父类,父类没有再找父类的父类,其尽头就 ...

随机推荐

  1. node学习基础

    node特点 js运行时,非阻塞I/O,事件循环 模块导入导出 模块化 导入 require('./xxx') module.exports=xxx index.js module.exports = ...

  2. 不变(Immutable)模式

    一个对象的状态在对象被创建之后就不再变化,这就是所谓的不变模式. 不变模式可增强对象的强壮性.不变模式允许多个对象共享一个对象,降低了对该对象进行并发访问时的同步化开销.如果需要修改一个不变对象的状态 ...

  3. .net Core MongoDB用法演示

    C#驱动MongoDB的本质是将C#的操作代码转换为mongo shell,驱动的API也比较简单明了,方法名和js shell的方法名基本都保持一致,熟悉mongo shell后学习MongoDB的 ...

  4. ubuntu docker inflxudb(安装 使用 备份 还原 以及python编码) telegraf Grafana

    inflxudb1.7.7 1.拉取最新的镜像 docker pull influxdb 2.运行实例: docker run -d --restart=always -p 8086:8086 -p ...

  5. (10)ASP.NET Core 中的环境(Environments:dev, stage, prod)

    1.环境变量配置 ASP.NET Core在应用程序启动时读取环境变量(Properties\launchSettings.json)ASPNETCORE_ENVIRONMENT,并将该值存储在IHo ...

  6. List/Map 导出到表格(使用注解和反射)

    Java 的 POI 库可以用来创建和操作 Excel 表格,有时候我们只需要简单地将 List 或 Map 导出到表格,样板代码比较多,不够优雅.如果能像 Gson 那样,使用注解标记要导出的属性, ...

  7. swiper4基础

    这段时间在公司实习做前端,感觉前端没学习到很多前端框架,接口那些都是写好的,只需要调用就好,感觉没什么好记的,唯一觉得有必要记的就是swiper轮播了,在前端做网站的时候经常用到swiper做公告,图 ...

  8. Django--一对多表操作

    目录 Django--一对多表操作 需求 步骤 添加路由映射关系 学生表的增删改查 ajax更新和添加 Django--一对多表操作 今天还以一个学生管理系统为例,先通过pymysql这个模块,进行一 ...

  9. 关于Mysql datetime类型存储范围测试

    创建一个datetime表 > create table date_time(time datetime); > desc date_time; +-------+----------+- ...

  10. PyTorch 安装 报错,原因是pip 不是64位的。

    原因: import pip._internal print(pip._internal.pep425tags.get_supported()) 换位64位的python版本. import pip. ...