1、类和实例:类是对象的定义,而实例是真正的事物。他存放了类中所定义的对象的具体信息
关键字是class,后面紧跟着一个类名,随后是定义类的雷替代码。通常有各种各样的定义和声明组成。
class newClass(base):
     'define neewClass class'
类分为经典类和新式类。所以得新式类必须继承至少一个父类
创建一个实例的过程称作实例化:aclass=newClass()
2.方法:类的功能。在Python中,方法定义在类的定义中,但只能被实例所调用。调用一个方法的途径:(1)定义一个类(和方法),(2)创建一个实例 (3)用这个实例用调用方法
例子:def aClass(object):
              def printfoo(self):
                  print ('You invoked printFoo()')
注意self参数,他在所有的方法声明中都存在,代表实例对象本身。
3、创建一个类:
class AddrBookEntry(object):
    'Address book entry class'
    def __init__(self,nm,ph):
        self.nm=nm
        self.ph=ph
        print ('Created instance for:',self.name)
    def updataPhone(self,newph):
        self.ph=newph
        print ('Updated phone# for:',self.name)
4、创建类的实例:
>>> bobi=AddrBookEntry('bobi','110')
Created instance for: bobi
>>> dier=AddrBookEntry('dier','123')
Created instance for: dier
5、访问实例属性:
>>> bobi.nm
'bobi'
>>> bobi.ph
'110'
6、方法调用:
>>> bobi.updataPhone('18800295576')
Updated phone# for: bobi
>>> dier.updataPhone('18721589896')
Updated phone# for: dier
>>> dier.ph
'18721589896'
7、创建子类:
靠继承来进行子类化
 class EmplAddrBookEntry(AddrBookEntry):
    'Employee Address Book Entry class'
    def __init__(self,nm,ph,idnum,em):
        AddrBookEntry.__init__(self,nm,ph)
        self.empid=idum
        self.email=em
    def updateEmail(self,newem):
        self.email=newem
        print('Updated E-mail address for:',self.nm)
8、使用子类:
>>> jack=EmplAddrBookEntry('jack','2213445',11,'123@345.com')
Created instance for: jack
>>> jack.updataPhone('123')
Updated phone# for: jack
>>> jack.updateEmail('www@com')
Updated E-mail address for: jack
>>> jack
<__main__.EmplAddrBookEntry object at 0x00000000032450F0>
>>> jack.email
'www@com'

Python面向对象编程——引言的更多相关文章

  1. python 面向对象编程学习

    1. 问题:将所有代码放入一个py文件:无法维护 方案:如果将代码才分放到多个py文件,好处: 1. 同一个名字的变量互相不影响 2.易于维护 3.引用模块: import module 2.包:解决 ...

  2. python 面向对象编程(一)

    一.如何定义一个类 在进行python面向对象编程之前,先来了解几个术语:类,类对象,实例对象,属性,函数和方法. 类是对现实世界中一些事物的封装,定义一个类可以采用下面的方式来定义: class c ...

  3. Python面向对象编程指南

    Python面向对象编程指南(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1SbD4gum4yGcUruH9icTPCQ 提取码:fzk5 复制这段内容后打开百度网 ...

  4. python面向对象编程进阶

    python面向对象编程进阶 一.isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 1 ...

  5. Python面向对象编程(下)

    本文主要通过几个实例介绍Python面向对象编程中的封装.继承.多态三大特性. 封装性 我们还是继续来看下上文中的例子,使用Student类创建一个对象,并修改对象的属性.代码如下: #-*- cod ...

  6. Python 面向对象编程——访问限制

    <无访问限制的对象> 在Class内部,可以有属性和方法,而外部代码可以通过直接调用实例变量的方法来操作数据,这样,就隐藏了内部的复杂逻辑.但是,从前面Student类的定义来看(见:Py ...

  7. Python 面向对象编程 继承 和多态

    Python 面向对象编程 继承 和多态 一:多继承性 对于java我们熟悉的是一个类只能继承一个父类:但是对于C++ 一个子类可以有多个父亲,同样对于 Python一个类也可以有多个父亲 格式: c ...

  8. Python 面向对象编程基础

    Python 面向对象编程基础 虽然Pthon是解释性语言,但是Pthon可以进行面向对象开发,小到 脚本程序,大到3D游戏,Python都可以做到. 一类: 语法: class 类名: 类属性,方法 ...

  9. python面向对象编程学习

    python面向对象编程 基本概念理解 面向对象编程--Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作 ...

随机推荐

  1. Linux下tmpfs与ramfs的区别

      ramfs是Linux下一种基于RAM做存储的文件系统.在使用过程中你就可以把ramfs理解为在普通的HDD上建立了一个文件系统,而现在HDD被替换成了RAM,因为是RAM做存储所以会有很高的存储 ...

  2. Ubuntu 14.10 下NodeJS Cannot find module 'npmlog'

    在安装brunch的时候npm install -g brunch发现如下问题: Error: Cannot find module ‘npmlog’ at Function.Module._reso ...

  3. SmartZoneOCR识别控件免费下载地址

    SmartZone™光学字符识别工具包,使开发人员能够进行带状区域光学字符识别,带状区域在表单处理应用程序中经常使用.本产品所包含的.NET控件以及ActiveX COM组件在内部使用两种单独的识别技 ...

  4. Interview----最长连续乘积字串

    题目描述: 给一个浮点数序列,取最大乘积连续子串的值,例如 -2.5,4,0,3,0.5,8,-1,则取出的最大乘积连续子串为3,0.5,8. 也就是说,上述数组中,3 0.5 8这3个数的乘积3*0 ...

  5. BZOJ 1968 约数研究

    其实打个表就会发现,这个玩意儿是积性的,然后很happy的搞了一下. 不,不是这样. 考虑每个约数对答案的贡献,不难发现:约数i的贡献为n/i. 加之即可. #include<iostream& ...

  6. linux centos安装编译phantomjs 2.0的方法

    phantomjs 2.0最新版的官方不提供编译好的文件下载,只能自己编译,有教程但是过于简单,特别是服务器上要安装N多的支持.折腾到现在终于装好了并且能正常运行了,截图mark一下: linux c ...

  7. WPF Step By Step 自定义模板

    WPF Step By Step 自定义模板 回顾 上一篇,我们简单介绍了几个基本的控件,本节我们将讲解每个控件的样式的自定义和数据模板的自定义,我们会结合项目中的具体的要求和场景来分析,给出我们实现 ...

  8. magento中的ajax

    <script type="text/javascript">        function loadRecommend(){         $.ajax({    ...

  9. MINIX3 内核时钟分析

    MINIX3 内核时钟分析  4.1 内核时钟概要  先想想为什么 OS 需要时钟?时钟是异步的一个非常重要的标志,设想一下,如 果我们的应用程序需要在多少秒后将触发某个程序或者进程,我们该怎么做到? ...

  10. postgresql基本操作:查看数据库、索引、表、表空间大小

    一.简介 PostgreSQL 提供了多个系统管理函数来查看表,索引,表空间及数据库的大小,下面详细介绍一下. 二.数据库对象尺寸函数 函数名 返回类型 描述 pg_column_size(any) ...