原标题:Python面向对象编程从零开始,从没对象到有对象

欢迎关注天善智能 hellobi.com,我们是专注于商业智能BI,大数据,数据分析领域的垂直社区,学习、问答、求职,一站式搞定!

对商业智能BI、大数据分析挖掘、机器学习,python,R等数据领域感兴趣的同学加微信:tstoutiao,邀请你进入数据爱好者交流群,数据爱好者们都在这儿。 前言

最近在写关于自然语言处理的文章,but,没对象啊,这可是个大问题。

莫慌,看完本文,你就能有对象了。

人生苦短,我选Python,其他空余的时间可以和对象一起玩耍。。。(此处省略n字) 对象和类

当然,此对象非彼对象。

360百科对对象的描述如下:

还记得小时候玩过的印章么,hellokitty那种印章:

360百科我表示看不懂,那就举个栗子。

如果对象是一个具体的存在,而类是产生对象的模版(为了帮助理解,描述的可能不是那么准确)

就像印章是类,对象则是印出来的图形。

就像化妆品是类,则CHANEL、Lancôme、Estee Lauder、Christian Dior等是对象(我也不知道我怎么会知道这些。。。)。

所以类是对对象的抽象。

面向对象和面向过程

我们一开始,例如大学学的C语言,是面向过程的,总的执行流程是顺序的,任何功能等的实现都是自己要写代码的。

现在说的面向对象和之前熟悉的面向过程可用下面的例子解释:

假如你想吃烤鱼:

面向过程:自己动手,从买鱼,洗鱼洗菜,烤鱼,加调料,装入盘子,端上桌,吃!!!(还要洗碗)

while(没吃腻):

体重++

面向对象:来到烤鱼店,点菜单,吃!!!,结账走人。

做人做要紧开心~

所以可以总结如下:

面向过程:自己靠双手按照流程解决问题。

面向对象:找个对象,让她做,自己轻松了。

两者都是解决问题的一种思路,但这个总结总是感觉哪里不对。

类的描述:类名,属性,方法

class 类名(大驼峰命名法):

#属性

#方法

defxxx(): pass

类名:类的名字

属性:类的属性

方法:类的方法

这解释。。。【掀桌

类的属性可以认为是在类里对象里定义的变量。

这里的方法,注意到是def 定义的,可以理解为函数!!! 定义一个类

classCar:

defdrive(selt): print(

'我正在开车')

defturnover(self): print(

'翻车了')

class后面定义的就是一个名为Car的类。

def定义的是类的方法(理解为类里的函数),这里定义了两个方法,开车和翻车。

创建一个对象

年轻人,听说你没对象?

没事,我们自己创建一个。

#创建一个对象 xiao_jie_jie=Car() xiao_jie_jie

.drive()

#调用xiao_jie_jie指向的对象的方法 xiao_jie_jie

.turnover()

运行结果:

看来小姐姐翻车了。。。

类的三要素集合

类的名称(Car),方法(开车,翻车)都有了,还差属性。

classCar:

defdrive(selt): print(

'我正在开车')

defturnover(self): print(

'翻车了')

#创建一个对象 xiao_jie_jie=Car() xiao_jie_jie.drive()

#调用xiao_jie_jie指向的对象的方法 xiao_jie_jie.turnover()

#添加属性,属性就是变量 xiao_jie_jie.name =

'王梦瑶' xiao_jie_jie.age =

20 print(

'%s的年龄是:%d'%(xiao_jie_jie.name,xiao_jie_jie.age))

这里小姐姐的名字纯属虚构(如有雷同,别喷我,你可以认为这是缘分啊~~~)

这里属性有name和age,或许可以有那啥???算了,怕被河蟹。

运行一下程序

是不是发现程序竟然可以这样写,很好玩吧,之后会连载的啦~想知道女司机的后续故事么,请持续关注!

转载请保留以下内容:

本文来源自天善社区ID王大伟老师的博客(公众号)。

原文链接: https://ask.hellobi.com/blog/wangdawei/8429返回搜狐,查看更多

责任编辑:

python面向对象编程从零开始_Python面向对象编程从零开始,从没对象到有对象相关推荐

  1. python面向对象的优点_Python面向对象编程——总结面向对象的优点

    Python面向对象编程--总结面向对象的优点 一.从代码级别看面向对象 1.在没有学习类这个概念时,数据与功能是分离的 def exc1(host,port,db,charset): conn=co ...

  2. python面相对象编程指南_Python面向对象编程指南

    抽象是隐藏多余细节的艺术.在面向对象的概念中,抽象的直接表现形式通常为类.虽然Python是解释性语言,但是它是面向对象的,从设计之初就已经是一门面向对象的语言.Python基本上提供了面向对象编程语 ...

  3. python面向对象编程中_Python面向对象编程中关于类和方法

    类和实例 python是一个面向对象的语言,而面向对象最重要的概念就是类和实例, 记得刚学习的时候不太理解这些概念,直到老师说了一句"物以类聚". 没错就是类, 归类 物以类聚 类 ...

  4. python类详解_python面向对象编程:python类和实例讲解

    东尧爱分享 这是东尧每天一篇文章的第51天 东尧写文章的目标:分享东尧的经验和思考,帮你获取物质和精神两方面幸福. 1 什么是对象 在python里面,一切皆为对象.也就是说python里的所有数据都 ...

  5. python面向对象生动讲解_Python面向对象语法精讲

    本专题的内容结构: 第一部分主要是:面向对象基础 第二部分主要是:面向对象进阶 第一部分的结构: unit1:面向对象编程模式: (1),面向对象编程思想 (2),面向对象的三个特征 (3),Pyth ...

  6. python面向对象的概念_Python面向对象概念和三要素

    语言分类 1.面向机器 抽象成机器指令,机器容易理解 代表:汇编语言 2.面向过程 做一个事情,排出步骤,第一步干什么,第二步干什么,如果出现情况A怎么处理,如果出现情况B做什么处理. 问题规模小,可 ...

  7. python modbus类封装_Python | 面向对象程序设计来了!

    当当当,技术小E又来了! 经过前几次的基础贴的培训 相信很多同学对python的基础知识 已经有了一个简单的认识 那么下面我们来讲一讲 python面向对象程序设计. 我们在写程序的时候一般有两种方式 ...

  8. python面向对象的含义_Python面向对象(一)

    什么是对象?对象:独立性.功能性.交互性万物皆对象,均继承于Object类OOP:面向对象编程,本质含义在于复用代码,在较大规模或复杂项目中有用,提高写作产量面向对象和面向过程的对比编程实例 面向过程 ...

  9. python 面向对象的封装_Python面向对象封装操作案例详解

    本文实例讲述了Python面向对象封装操作.分享给大家供大家参考,具体如下: 目标 封装 小明爱跑步 存放家具 01. 封装 封装 是面向对象编程的一大特点 面向对象编程的 第一步 ―― 将 属性 和 ...

最新文章

  1. 【中文字幕】加州理工《数据学习:机器学习课程》视频及ppt分享
  2. 百万级分组大报表开发与呈现
  3. linux内核3.4基于wakeup_source的autosleep机制分析
  4. 高考特长计算机2017,2017年北京理工大学计算机学院申请竞赛获奖与特长生推荐.PDF...
  5. ssh 错误: ssh_exchange_identification
  6. SELinux基本概念及基本配置
  7. python邮件转发_把Gmail邮件转发到gtalk的Python方法
  8. 判断是否是日期格式_Java8新特性之新世间与日期
  9. X86汇编语言从实模式到保护模式01:处理器、内存和指令
  10. 转:在Nginx上配置多个站点
  11. LoadRunner参数化---数据文件属性 之 数据分配方法和数据更新方法
  12. mysql 去空格_MySQL基本命令操作
  13. python基础之小数据池、代码块、编码
  14. win7 安装英文语言包
  15. EXIT: Extrapolation and Interpolation-based Neural Controlled Differential Equations for Time-series
  16. 仿照vue实现双向数据绑定兼容IE6
  17. java开发第一天该做些什么?
  18. close()是不是python内置函数_python 内置函数
  19. ffmpeg 分离视频音频流 缺失sei信息
  20. :is()伪类选择器 :where()伪类选择器

热门文章

  1. python对Excel的操作 xlrd、xlwt包详解
  2. 图像处理与图像识别笔记(五)图像增强2
  3. comparing ORB and AKAZE
  4. Android实现高仿QQ附近的人搜索展示
  5. Python 中 xpath 语法 与 lxml 库解析 HTML/XML 和 CSS Selector
  6. mysql numeric float_sql 下,float和numeric
  7. Spring Security用户认证和权限控制(默认实现)
  8. [设计模式] ------ 策略模式实战:java中替代if-else的大段逻辑
  9. [设计模式] ------ 策略模式
  10. NSURLCache缓存使用简介