面向对象

来源:互联网 发布:residential 网络 编辑:程序博客网 时间:2024/06/05 16:32

1.面向对象

类:具有同种属性的对象称为类,是个抽象的概念。比如说:汽车、人、狗、神;
对象:日常生活中的所有东西都是对象,是类的实例化。比如说:推土车是汽车的实例化;姚明是人的实例化;小白(狗的名字)是狗的实例化;二郎神是神的实例化;
属性:用来描述具体某个对象的特征的是属性,是静态的。比如:姚明身高2.6米多;小白的毛发是棕色的;二郎神额头上有只眼睛;
方法:每个对象有它们自己的行为或者是使用它们的方法,比如说一只狗会跑会叫等,我们把这些行为称之为方法,是动态的,可以使用这些方法来操作一个对象;
类的成员:属性和方法称为这个对象的成员,因为它们是构成一个对象的主要部分,没有了这两样东西,那么对象也没什么存在意义了。

2.Python对象

身份:唯一性身份标志,是该对象的内存地址,可用内建函数id()获得。

类型:对象的类型决定了该对象可以保存什么类型的值,可进行什么样的操作,以及遵循什么样的规则。可以type()获得。

值:对象表示的数据项。

S='abc'print S   #abcprint id(S) #40717688print type(S) #<type 'str'>

3.Python类型

标准类型(基本数据类型)

数字(含子类型)
Integer:整型
Boolean:布尔型
Long integer:长整型
Floating point real number:浮点型
String:字符串
List:列表
Tuple:元组
Dictionary:字典

其他类型

类型
Null对象(None)
文件
集合/固定集合
函数/方法
模块

4.内建函数和工厂函数

1.内建函数

所谓内建函数(Built-in Functions),个人觉得就是自带的、标准的函数,如:

1.功能内建函数:

仅适用于整数的内建函数:这种函数分两类:
一类用于进制转换:oct()八进制转换,hex()十六进制转换。

一类用于ASCII 转换:。每个字符对应一个唯一的整数(0-255)。

2.字符串内建函数

方法 描述
string.capitalize() 把字符串的第一个字符大写

string.center(width) 返回一个原字符串居中,并使用空格填充至长度width 的新字符串

3.映射类型内建函数

cmp(): 字典的比较,先比较长度,在比较键,在比较字典的值
len():。 对字典调用len(),它会返回所有元素(键-值对)的数目:
hash(): 内建函数hash()本身并不是为字典设计的方法,但它可以判断某个对象是否可以做一个字典的键。将一个对象作为参数传递给hash(), 会返回这个对象的哈希值。只有这个对象是可哈希的,才可作为字典的键 (函数的返回值是整数,不产生错误或异常)。

https://docs.python.org/2/library/functions.html

2.工厂函数

Python2.2统一了类型和类,所有的内建函数现在都也是类,在这基础上,原来的所谓的内建转换函数像int()、type()、list()等,现在都成了工厂函数。虽然看上去像函数,但实质上它们是类,当你在调用它们时,实际上生成了该类的一个实例,就像工厂生产货物一样。

见python核心编程:工厂函数看上去有点像函数,实质上他们是类,当你调用它们时,实际上是生成了该类型的一个实例,就像工厂生产货物一样.

所谓工厂函数就是指这些内建函数都是类对象, 当你调用它们时,实际上是创建了一个类实例。

工厂函数:
int(),long(),float(),complex(),bool()
str(),unicode(),basestring()
list(),tuple():生成列表或者元组
type():查看类型
dict():生成一个字典
set(): 生产可变集合
frozenset():生成不可变集合
object()
classmethod():声明一个类方法
staticmethod():声明一个静态方法
super(): 指此类的父类
property()
file()

int()、long()、float()、complex()、str()、unicode()、basestring()、list()、tuple()、type()
dict()、bool()、set()、frozenset()、object()、classmethod()、staticmethod()、super()、property()、file()


0 0
原创粉丝点击