参考资料:1.Python:函数和类_江南好-CSDN博客_python 类和函数

2.self参数 - __ init__ ()方法 super(Net, self).__init__()是什么_热爱可抵漫长岁月-CSDN博客

本篇内容是对参考链接内容的学习记录。

        根据约定,在python中类的名称的首字母是大写的,当然,这只是约定,即类名称首字母也可是小写的。

1.类中的特殊方法__init__()

(1)在每次根据类创建实例时,都会被自动运行。

(2)类的各个属性都是在该方法中定义和初始化的。

(3)由于神经网络中一些结构的设置我们希望在创建实例时就有,所以这些设置一般都放在__init__()方法中

2.类中方法形参self

(1)类中定义的每一个方法都会有形参self,包括__init__()也有。

(2)它是一个指向实例本身的引用,作用在于让类方法通过实例来访问类中的属性和方法。

(3)调用与类相关联的方法时都将自动传递实参self

(4)   类中的方法的第一个参数一定要是self,而且不能省略。

class Person():def __init__(self,name,age):self.name=nameself.age=agedef printname(self):print(self.name)

3.继承

        一个类继承另一个类时,它将自动获得另一个类的所有属性和方法;原有的类称为父类,而新类称为子类。子类继承了其父类的所有属性和方法,同时还可以定义自己的属性和方法以区分子类和父类。

(1)创建子类时,父类必须包含在当前python程序文件中,且位于子类前面。

(2)定义子类时,必须在括号内指定父类的名称。

(3)将父类和子类关联起来的方法super(),super()调用于子类方法__init__中的首行:                              super().__init__(a,b,c) # 初始化父类的属性,a,b,c由子类方法__init__()提供。

class Person():def __init__(self,name,age):...
Class Teacher(Person):def __init__(self,name,age,teachertitle):super().__init__(name,age)#参考链接2,上面这句也可以写成#super(Teacher,self).__init__(name.age)self.teachertitle=teachertitle

super(Net, self).init():

在神经网络中常看到super(Net, self).init()这句是指首先找到Net的父类(比如是类NNet),然后把类Net的对象self转换为类NNet的对象,然后“被转换”的类NNet对象调用自己的init函数,其实简单理解就是子类把父类的__init__()放到自己的__init__()当中,这样子类就有了父类的__init__()的那些东西。
        神经网络里常见的Net类继承nn.Module,super(Net, self).init()就是对继承自父类nn.Module的属性进行初始化。而且是用nn.Module的初始化方法来初始化继承的属性。

class Net(nn.Module):def __init__(self):super(Net, self).__init__()

参考链接2中还有更多的例子可以参考。

4. __call__()方法

参考链接:Python 中__call__ 的用法_南淮北安的博客-CSDN博客

在定义类型的时候,实现__call__函数,这个类型就成为可调用的,换句话说,我们可以把这个类型的对象当作函数来使用,相当于重载了括号运算符。

class Person():def __init__(self, name, age):self.name = nameself.age = agedef __call__(self, friend):print('My friend is %s...' % friend)T=Person('dj',30)
T('mark')  ###对象可以像函数一样

输出结果是:

文中若有不妥或错误之处,还望指出!

python知识点学习——类相关推荐

  1. python代码学习——类与对象提升(继承、超继承,类的例题,魔术方法)

    python代码学习--类与对象提升 继承 继承的特殊属性: 代码示例 方法的重写和覆盖(overrrid) 总结 超继承 继承中的初始化 多继承 例题 类的魔术方法 哈希(hash)和eq方法 bo ...

  2. Python知识点7——类

    定义一个类 Python中,定义类的方式是:class classname(): class cat():def __init__(self, name, age):#Python中的构造函数,初始化 ...

  3. Python知识点学习——切片

    参考链接:1.Python列表切片详解([][:][::])_白辰甲-CSDN博客_python切片 2.Python学习笔记之列表切片(六)_茕夜-CSDN博客_python 列表切片 3.http ...

  4. 前辈说先学会了这些Python知识点,再谈学习人工智能、机器学习

    随着前面阿法尔go打败了围棋大师,让人工智能.机器学习大火了一把,然后学习人工智能和机器学习前提也需要掌握一定的Python知识点,那么学习这些前,我们究竟应该先掌握哪些Python知识点呢? 第一阶 ...

  5. tensorflow和python先学哪个-前辈说先学会了这些Python知识点,再谈学习人工智能!...

    原标题:前辈说先学会了这些Python知识点,再谈学习人工智能! 首先我们看一看Python的优势: 开源,跨平台. 社区.不要小看这一点.社区意味着有很多教程.书籍,出了问题很容易google到,乃 ...

  6. 【Python】Python语言学习:面向对象编程,类和对象,封装、继承和多态

    这一周Python语言学习,记录如下. 01 面向对象编OOP 1.1 为什么学习和应用OOP? 1 OOP适合更加复杂的需求分析和项目开发. 2 OOP具有更强大的封装能力. 3 OOP相比于面向过 ...

  7. 风变Python编程13类的学习2

    Python 类的学习2 上一关,我们知道了面向对象编程的重要性,也学习了类的基础知识(1.面向对象编程,2.类的创建和调用,3.创建类的两个关键点) 这一关,我们会拓展类的知识疆界,探索两个类的拓展 ...

  8. python如何创建一个类_python (知识点:类)简单的创建一个类

    #!/usr/bin/env python # -*- coding: utf-8 -*- """ Created on Mon Nov 14 01:01:29 2016 ...

  9. Python编程语言学习:python的列表的特殊应用之一行命令实现if判断中的两类判断

    Python编程语言学习:python的列表的特殊应用之一行命令实现if判断中的两类判断 目录 python的列表的特殊应用 一行命令实现if判断中的两类判断 python的列表的特殊应用 一行命令实 ...

最新文章

  1. XML的简单读取与写入
  2. pandas数据清洗(缺失值、异常值和重复值处理)
  3. 不出现用户帐户控制-让Win7的用户账户控制(UAC)放过信任的程序
  4. 互联网1分钟 | 1015
  5. 【杂谈】数学,计算机视觉,图形图像处理
  6. 修改jwt过期时间_PostgreSQL如何修改用户过期时间
  7. 干货!无需任何工具,实测macOS双开微信客户端
  8. dede使用方法----调用导航
  9. 好947 Mybatis 配置resultMap 带參数查询Map 注意selectOne数据库返回结果一条数据库 否则会报错...
  10. Numpy——常用的排序函数
  11. 年轻就是程序员的资本?我不敢苟同!
  12. oracle如何调试sql,调试oracle与调试sql server存储过程
  13. java项目关联关系_Mybatis一对多关联关系映射实现过程解析
  14. Android P新特性
  15. win10此电脑不见了_Win10如何把控制面板放到桌面上?Win10控制面板不见了解决方法...
  16. 三剑合一称霸互联网时代——Serverless助推云计算-大数据-人工智能
  17. 手把手教你如何写一个三子棋/N子棋的小游戏
  18. EAI_BOT越登智能车
  19. 蓝桥杯_大胖子走迷宫
  20. tomcat端口占用极其简单解决办法

热门文章

  1. android 屏幕适配框架,Android屏幕适配
  2. 货车司机老王的一个梦
  3. 5个跨境电商开设店铺必备的好用免费工具——多账号管理/指纹浏览器/独立浏览器/跨境电商营销浏览器
  4. 便携式多普勒超声波流量计(水测家)
  5. Lua sublime Text 2 - 性感无比的代码编辑器!程序员必备神器!跨平台支持Win/Mac/Linux
  6. 【电商】OMS--零售电商系统的核心
  7. php安装jwt,从composer安装到运行php-jwt的实践经历
  8. 手机不支持SD卡扩展
  9. HTML特殊符号大全
  10. 什么样的域名有助于网络营销的seo优化(自然排名) 上海添力