Python面向对象实现方法总结


Posted in Python onAugust 12, 2020

总结

类的定义

很久以前,语言都是面向过程的,经过计算机科学家的探索,出现了面向对象。面向对象可以解释生活中很多东西。比如人,人就是个对象,有参数,比如器官,身高啥的,有方法,比如跑步,学习等。不扯那么多了。
对象就是类,在python中用class定义类。类里面有两大部分,一部分是属性,一部分是方法。比如,定义一个人对象。这个人的属性就是身高,体重,方法就是说话。

#定义人
class Person:
  #定义属性
  height=0
  weight=0

  #构造函数
  def __init__(self,h,w):
    self.height=h
    self.weight=w
  
  #定义方法
  def speak(self):
    print('I can speak!')

上面的代码就定义了一个Person类.

继承

定义了类之后,就要牵扯到继承这个事。说白了就是儿子继承父亲的家产(属性,方法),但儿子也可对属性进行添加,方法进行重写或增加等。

python继承很简单,格式是这样的

class Son(Parent)

通过这样的定义就有了一个继承类son,他会继承parent的everything。写段代码例子。

class Parent:
  money=0
  def __init__(self,m):
    self.money=m
    
  def makeMoney(self):
    print('i can make money!')

class Son(Parent):
  height=0
  def __init__(self,m,h):
    Parent.__init__(self,m)
    self.height=h
    
  def makeMoney(self):
    print('So did i!')
son=Son(20,1)
print(son.makeMoney())

继承后你可能想调用父类的方法,可以用super(Son,son).makeMoney()调用。

上面是单继承的例子,多继承类似,在此就不再赘述

私有变量

这个东西只能在类里使用,不能通过实例化对象调用。

定义的时候在变量名字前加__

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python去除列表中重复元素的方法
Mar 20 Python
python根据开头和结尾字符串获取中间字符串的方法
Mar 26 Python
python中装饰器级连的使用方法示例
Sep 29 Python
python抓取网页中链接的静态图片
Jan 29 Python
Python subprocess库的使用详解
Oct 26 Python
python IDLE 背景以及字体大小的修改方法
Jul 12 Python
Python3 使用selenium插件爬取苏宁商家联系电话
Dec 23 Python
python数据爬下来保存的位置
Feb 17 Python
Python2手动安装更新pip过程实例解析
Jul 16 Python
python高级特性简介
Aug 13 Python
Python+OpenCV图像处理——实现直线检测
Oct 23 Python
python 批量压缩图片的脚本
Jun 02 Python
Python命名空间及作用域原理实例解析
Aug 12 #Python
python将字典内容写入json文件的实例代码
Aug 12 #Python
Python调用jar包方法实现过程解析
Aug 11 #Python
如何用python免费看美剧
Aug 11 #Python
Pythonic版二分查找实现过程原理解析
Aug 11 #Python
Python3合并两个有序数组代码实例
Aug 11 #Python
Python基于gevent实现文件字符串查找器
Aug 11 #Python
You might like
php函数指定默认值方法的小例子
2013/12/04 PHP
PHP的serialize序列化数据以及JSON格式化数据分析
2015/10/10 PHP
[原创]php常用字符串输出方法分析(echo,print,printf及sprintf)
2016/07/09 PHP
Yii实现Command任务处理的方法详解
2016/07/14 PHP
PHP开发的微信现金红包功能示例
2017/06/29 PHP
Thinkphp 框架基础之入口文件功能、定义与用法分析
2020/04/27 PHP
PHP预定义接口――Iterator用法示例
2020/06/05 PHP
PHP实现Snowflake生成分布式唯一ID的方法示例
2020/08/30 PHP
Javascript 网页黑白效果实现代码(兼容IE/FF等)
2010/04/23 Javascript
js中iframe调用父页面的方法
2014/10/30 Javascript
jQuery中:radio选择器用法实例
2015/01/03 Javascript
JavaScript使用二分查找算法在数组中查找数据的方法
2015/04/07 Javascript
简单实现JS对dom操作封装
2015/12/02 Javascript
js简单判断移动端系统的方法
2016/02/25 Javascript
AngularJS 执行流程详细介绍
2016/08/18 Javascript
js操作浏览器的参数方法
2017/01/21 Javascript
基于vue-simplemde实现图片拖拽、粘贴功能
2018/04/12 Javascript
Vuex的基本概念、项目搭建以及入坑点
2018/11/04 Javascript
vue中slot(插槽)的介绍与使用
2018/11/12 Javascript
vue element中axios下载文件(后端Python)
2019/05/10 Javascript
JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
2019/07/10 Javascript
javascript移动端 电子书 翻页效果实现代码
2019/09/07 Javascript
jQuery实现聊天对话框
2020/02/08 jQuery
解决VUE-Router 同一页面第二次进入不刷新的问题
2020/07/22 Javascript
[02:06]DOTA2英雄基础教程 暗影萨满
2013/12/16 DOTA
[48:53]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS VG第一场
2014/05/26 DOTA
Python脚本实现12306火车票查询系统
2016/09/30 Python
Python3中的列表生成式、生成器与迭代器实例详解
2018/06/11 Python
python使用matplotlib库生成随机漫步图
2018/08/27 Python
Django学习笔记之为Model添加Action
2019/04/30 Python
细说NumPy数组的四种乘法的使用
2020/12/18 Python
CSS3 :nth-child()伪类选择器实现奇偶行显示不同样式
2013/11/05 HTML / CSS
HTML5 与 XHTML2
2008/10/17 HTML / CSS
Charles & Keith欧盟:新加坡时尚品牌
2019/08/01 全球购物
企业安全生产承诺书
2014/05/22 职场文书
Python连续赋值需要注意的一些问题
2021/06/03 Python