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. Python学习路程day7

    多态 class Animal: def __init__(self, name): # Constructor of the class self.name = name def talk(self ...

  2. bistu新生-1004

    #include "stdio.h"#include "stdlib.h"#include "math.h"int cmp(const vo ...

  3. leetcode 233 Number of Digit One

    这题属于需要找规律的题.先想一下最简单的情形:N = 10^n - 1 记X[i]表示从1到10^i - 1中 1 的个数,则有如下递推公式:X[i] = 10 * X[i - 1] + 10^(i ...

  4. osmocom-bb中用osmocon刷入固件命令那些参数你都弄懂了吗?

    转载留做备份,原文地址:http://92ez.com/?action=show&id=23341 首先找到osmocon.c这个源文件,具体目录在这里 osmocom-bb/src/host ...

  5. The Separator in Grid_BFS

    Description Given a connected, undirected graph G = (V, E), where V is the vertex set consisting a c ...

  6. Android开发指南-框架主题-安全和许可

    概述:Android操作系统是一个安全便捷的Linux系统,遵循Linux系统机制,允许多进程.为了进程间的数据共享和交互共用,设计"权限"这个名词,声明权限代表可使用此权限,未声 ...

  7. BZOJ3028 食物 (生成函数)

    首先 1+x+x^2+x^3+...+x^∞=1/(1-x) 对于题目中的几种食物写出生成函数 (对于a*x^b , a表示方案数 x表示食物,b表示该种食物的个数) f(1)=1+x^2+x^4+. ...

  8. 【转】Fast Entity Component System

    http://entity-systems.wikidot.com/fast-entity-component-system Summary Create a generic System class ...

  9. 蓝牙(Profile)构成

    蓝牙剖面(Profile)构成 蓝牙剖面(Profile)及其相互关系 蓝牙SIG定义13种蓝牙剖面及其相互关系如下图: 一个剖面若直接或间接采用了另一个剖面的部分或全部功能则称该剖面依赖于另一剖面. ...

  10. less 快捷操作

    查找操作: /pattern    向前查找包含pattern的行 ?pattern 向后查找包含pattern的行 n 查找下一个pattern 的行 N 查找上一个pattern的行 ESC-u ...