Python面向对象01

原创 2016年08月29日 16:04:13

  今天,我们来介绍Python的面向对象编程,其实面向对象并不陌生,在C++  ,Java  ,PHP中也有大量使用!

  好了,我们来步入正题!

  那什么是面向对象编程呢?

    1. 面向对象编程是一种程序设计的范式

    2. 把程序看作是不同对象的相互调用

    3. 它是对现实世界建立对象模型

  下面我们来介绍一下面向对象的基本思想:

    类和实例,类用于定义抽象类型,实例根据类的定义被创建出来。

    

  如上图所示:人可以看作是一个模型,而张三,李四,王五,计算根据就是根据人这个模型而构造出来的一个个实体。

  而这里我们可以说,人就是类的定义,而张三,李四,王五他们就是实例,如下图所示:

    

    在Python中,类是由关键字class来定义,

      

  面向对象最重要的一个思想是数据封装,我们可以在类中定义属性和方法。

  class Person:

    def __init__(self,name):

      self.name = name

  p1 = Person('zs')

  p2 = Person('ls')

  p3 = Person('ww')

  上面就是面向对象的大体内容,接下来我们详细介绍一下:

  

  1.定义类并创建实例:

    在Python中,类通过class来定义,比如我们来定义一个Person类:

      class Person(object):

        pass...

        ......

      在Python的编程习惯中,类名以大写字母开头,紧接着是(object),表示该类是从哪个类继承下来的。在这里假设是从object类继承下来!

    有了类的定义,我们就可以创建出具体的实例,创建实例使用类名(),即 ls = Person().

 

  2.创建实例属性:

    虽然Person类可以创建出ls,ww,等等实例,但是这些实例看上去除了地址不同外,没有什么其他不同。但是如果让每个实例·拥有各自不同的属性,那我们就可以区分他    们了,那么如何给实例赋予属性的!当然了,大家都知道,Python是动态语言,对于每一个实例,都可以直接给他们的属性赋值:

      ls = Person()

      ls.name = 'li si'

      ls.birth = '1995-6-5'

      ls.age = 21

      而且,实例的属性可以像普通变量一样进行操作,ls.age = ls.age + 2

  类与list结合的情况:

    class Person(object):

      pass

    p1 = Person()

    p1.name = 'bart'

    p2 = Person()

    p2.name = 'adam'

    p3 = Person()

    p3.name = 'lisa'

    list1 = [p1,p2,p3]

    list2 = [p1,p2,p3]

    print (list2[0].name)

    print (list2[1].name)

    print (list2[2].name)

版权声明:本文为博主原创文章,未经博主允许不得转载。

面向对象编程其实很简单——Python 面向对象(初级篇)

出处:http://www.cnblogs.com/wupeiqi/ 概述面向过程:根据业务逻辑从上到下写垒代码函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可面向对象:对函数进行...
  • haoluojie
  • haoluojie
  • 2016年11月14日 13:02
  • 1779

python面向对象小练习

class Animal(object): def __init__(self,name,weight): self.name = name self.weight = weight de...
  • wangyaninglm
  • wangyaninglm
  • 2015年04月24日 14:34
  • 1660

Python面向对象编程总结(上)

在我学习python之前一直认为python是脚本型语言,不能用面相对象的方法进行编程,当我学习了python之后我发现我错了,python不但支持面相对象而且使用的人还挺多的。我从接触编程开始就是学...
  • xingjiarong
  • xingjiarong
  • 2016年02月16日 10:36
  • 3593

【Python学习笔记】面向对象编程:继承和多态

【根据廖雪峰python教程整理】 一、继承 在OOP程序设计中,当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的...
  • Junkichan
  • Junkichan
  • 2016年07月11日 15:14
  • 706

深入理解Python中的面向对象

博客核心内容: 面向过程与面向对象的对比 id、type和value的讲解 类和对象的概念 初始化构造函数__init__的作用 self关键字的使用 继承的概念 组合的概念 接口的概念 抽象类的概念...
  • a2011480169
  • a2011480169
  • 2017年06月12日 06:42
  • 1825

Python 函数式编程和面向对象编程等(进阶)

函数:function。函数式:functional,一种编程范式。函数式编程是一种抽象计算机的编程模式。...
  • Jerome_s
  • Jerome_s
  • 2015年08月03日 22:35
  • 1117

python(六)面向对象学习--类

内容类(class)   属性     实例变量(每个实例内存中)     类变量(类内存中)     私有属性 __var   方法     构造方法     析构函数(默认就有,代码...
  • fgf00
  • fgf00
  • 2016年09月06日 14:31
  • 1064

Python篇----面向对象程序设计(一)(类和对象篇)

1 概述     简称:OOP(Oriented Object Programming)。这是一种以构建对象,编程实现为方向的语言。现实世界中,许多问题过于复杂,需要拆分,所以用不同的对象代替各个不同...
  • guzhenping
  • guzhenping
  • 2015年11月24日 23:41
  • 1973

面向过程 函数式 面向对象 ----基于python讲解

面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...”...
  • letunihao
  • letunihao
  • 2016年04月24日 10:26
  • 831

自学Python day6--------面向对象编程(类和实例)

自学Python day6——–面向对象编程(类和实例)1.类和实例 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类...
  • hident
  • hident
  • 2017年02月25日 15:00
  • 228
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Python面向对象01
举报原因:
原因补充:

(最多只允许输入30个字)