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之坑爹的字符编码
Sep 28 Python
Python实现对一个函数应用多个装饰器的方法示例
Feb 09 Python
为什么入门大数据选择Python而不是Java?
Mar 07 Python
Python实现基于TCP UDP协议的IPv4 IPv6模式客户端和服务端功能示例
Mar 22 Python
Python3之读取连接过的网络并定位的方法
Apr 22 Python
python实现自动登录
Sep 17 Python
python2与python3的print及字符串格式化小结
Nov 30 Python
计算机二级python学习教程(1) 教大家如何学习python
May 16 Python
Python3 执行系统命令并获取实时回显功能
Jul 09 Python
Python的Tkinter点击按钮触发事件的例子
Jul 19 Python
详解在Python中使用Torchmoji将文本转换为表情符号
Jul 27 Python
如何用python开发Zeroc Ice应用
Jan 29 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 单引号与双引号的区别
2009/11/24 PHP
微信公众号OAuth2.0网页授权问题浅析
2017/01/21 PHP
ajax+php实现无刷新验证手机号的实例
2017/12/22 PHP
js类中的公有变量和私有变量
2008/07/24 Javascript
JavaScript中使用正则匹配多条,且获取每条中的分组数据
2010/11/30 Javascript
jquery中:input和input的区别分析
2011/07/13 Javascript
mailto的使用技巧分享
2012/12/21 Javascript
js操作iframe父子窗体示例
2014/05/22 Javascript
Windows系统下Node.js的简单入门教程
2015/06/23 Javascript
JavaScript实现动态删除列表框值的方法
2015/08/12 Javascript
js实现拖拽效果(构造函数)
2015/12/14 Javascript
JavaScript黑洞数字之运算路线查找算法(递归算法)实例
2016/01/28 Javascript
JS组件系列之Bootstrap table表格组件神器【二、父子表和行列调序】
2016/05/10 Javascript
解读Bootstrap v4 sass设计
2016/05/29 Javascript
JavaScript中使用Async实现异步控制
2017/08/15 Javascript
基于vue中解决v-for使用报红并出现警告的问题
2018/03/03 Javascript
vue自动路由-单页面项目(非build时构建)
2019/04/30 Javascript
微信小程序云开发实现增删改查功能
2019/05/17 Javascript
微信小程序可滑动周日历组件使用详解
2019/10/21 Javascript
js 解析 JSON 数据简单示例
2020/04/21 Javascript
Cpy和Python的效率对比
2015/03/20 Python
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
2015/10/18 Python
Python构建XML树结构的方法示例
2017/06/30 Python
详解Python使用Plotly绘图工具,绘制甘特图
2019/04/02 Python
基于python实现百度翻译功能
2019/05/09 Python
python之MSE、MAE、RMSE的使用
2020/02/24 Python
python读取yaml文件后修改写入本地实例
2020/04/27 Python
django restframework serializer 增加自定义字段操作
2020/07/15 Python
浅析Python requests 模块
2020/10/09 Python
澳大利亚儿童鞋在线:The Trybe
2019/07/16 全球购物
房产继承公证书
2014/04/09 职场文书
授权委托书范文
2014/07/31 职场文书
群众路线剖析材料
2014/09/30 职场文书
2015年度护士个人工作总结
2015/04/09 职场文书
小学语文国培研修日志
2015/11/13 职场文书
看看如何用Python绘制小米新版天价logo
2021/04/20 Python