基础知识回顾——面向对象编程


在进入面向对象编程之前,希望对python常见内建函数做个整理,参考来自官网

常见内建函数

chr(number) 返回ASCII码为给定数字的字符
ord(char) 返回给定单字符(长度为1的字符串或者Unicode字符串)的ASCII值
all(iterable) 如果所有iterable的元素均为真则返回True, 否则返回False
any(iterable) 如果有任一iterable的元素为真则返回True,否则返回False
callable(object) 检查对象是否可调用
dir([object]) 选择性地列出给定对象的(大多数)特性
help([object]) 调用内建的帮助系统,或者打印给定对象的帮助信息
reload(module) 重载入一个已经载入的模块并将其返回
repr(object) 返回表示对象的字符串,一般作为eval的参数使用
eval(string[, globals[, locals]]) 对包含表达式的字符串进行计算
input([prompt]) 等同于eval(raw_input(prompt)
raw_input([prompt]) 将用户输入的数据作为字符串返回,可选择使用给定的提示符prompt
str(object) 返回表示给定对象object的格式化好的字符串
type(object) 返回给定对象的类型

 

 

面向对象编程

面向对象是一种程序设计方法,相对面向过程而言,把函数进行分类和封装。

面向对象概念初识

概念

说明

例子

现实世界中的一些事物抽象封装。以关键字class开头,后接类名及冒号。

class  Person:

      name = ‘Lucy’

      def SetAge(self,age):

           Self.age = age

对象

类定义后的一个实例,对象包括属性和方法。对象分为类对象,实例对象

 

类对象

类定义完成之后即产生了一个全局的类对象,可以通过类对象来访问类中的属性和方法。

Person 类对象

实例对象

实例对象是对类的实例化,可以实例化多个

p = Person() 实例对象

属性

 形容对象是什么或者能干什么

 

类属性

类属性所有实例对象所共有的属性,在类外,可以通过类对象定义或修改,在类里面,只能在类方法中进行定义或修改。

name = ‘Lucy’  类属性

Person.country = ‘china’ 通过类对象定义

实例属性

某个实例对象的属性,当与类属性冲突时,实例属性屏蔽类属性。

p.country = ‘china’  通过实例对象定义

私有属性

以双下划线开头,不能在类的外部被直接访问

__name = ‘Lucy’

函数

完成特定功能的代码块,便于重用

def SetAge(age):

    return age

方法

方法同函数功能一样,写在类中,同对象联用

def SetAge(self,age):

     Self.age = age

类方法

含@classmethod修饰符且必须有cls参数的方法,可以通过实例对象和类对象访问

 @classmethod

def SetAge(cls,age):

     cls.age = age

实例方法

含self的方法,只能通过实例对象访问

def SetAge(self,age):

     Self.age = age

静态方法

含@staticmethod修饰符的方法,只能通过类对象访问

 @staticmethod

def SetAge(age):

     return  age

 

常见内置方法

类的内置方法

内置方法名

说明

__init__(self,...)

初始化对象,在创建新对象时调用

__del__(self)     

释放对象,在对象被删除之前调用

 __new__(cls,*args,**kwd)

实例的生成操作

__str__(self)

在使用print语句时被调用

 __call__(self,*args)     

把实例对象作为函数调用

__getattr__(s,name)

获取属性的值

__setattr__(s,name,value)

设置属性的值

 __delattr__(s,name)

删除属性的值

posted on 2017-01-14 12:59  Ryana  阅读(205)  评论(0编辑  收藏  举报