一、学习目录

1、pyhton对象

2、python类型

3、类型操作符与内建函数

4、类型工厂函数

5、不支持类型

二、思考

1、Python解释执行原理?

2、Python对象机制?

3、Python哪些常用类型和内建函数?

4、什么是工厂函数?与内建函数的区别?

三、学习重点总结
资源参考:

1.《Python核心编程 2》

2.互联网

--------------------------------------------------------------------------------------------------------------------------------------------

我承认我的C语言基础比较薄弱,承认自己计算机原理并没有好好学,这才导致了在编程上的一知半解,其实了解底层的东西更加有利于编程的理解。

四、Python中一切皆对象

1、思考1:Python解释执行原理?

参考:http://l62s.iteye.com/blog/1481421

Python使用对象模型来存储数据,构造任何类型的值都是一个对象。所以说在Python的世界中,一切皆对象,一个整数是一个对象,一个字符串也是一个对象,而且类型也是一个对象,整数类型是一个对象,字符串类型也是一个对象。

2、思考2:什么是对象模型?

对象模型技术简介:

对象模型技术(object modeling technique,OMT)是美国通用电气对象模型技术提出的一套系统开发技术。它以面向对象的思想为基础,通过对问题进行抽象,构造出一组相关的模型,这些模型描述了现实世界中“类与对象”以及它们之间的关系,表示了目标系统的静态数据结构,从而能够全面地捕捉问题空间的信息。

对象模型技术特点:

对象模型技术把分析时收到的信息构造在三类模型中,即对象模型、功能模型动态模型。三个模型从不同的角度对系统进行描述,分别着重于系统的一个方面,组合起来构成对系统的完整描述。形象地说,功能模型定义“做什么”,状态模型定义“何时做”,对象模型定义“对谁做”。

面向对象三种模型:

对象模型:描述系统数据结构
动态模型:描述系统控制结构
功能模型:描述系统功能

3、Python对象

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

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

值:对象表示的数据项

 >>> s='abc'
 >>> id(s)   #身份
 13434272
 >>> type(s)  #类型
 <type 'str'>
 >>> s  #值
 'abc'

在对象被创建时就已被赋值,除了值之外,其他两个都是只读的。

对象的可改变性(mutability):指对象的值是否可以更改。

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

五、Python类型

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

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

2、其他类型

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

>>> type(type('abc'))
<type 'type'>

这行代码告诉我们:“所有类型对象的类型都是type,它是python类型的根,所有Python标准类的默认元类”

要弄明白:对象类型(对象的类型)和类型对象(类型本身是对象)。

3、简单了解下内部类型

六、内建函数与工厂行数

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

    Built-in Functions    
abs() divmod() input() open() staticmethod()
all() enumerate() int() ord() str()
any() eval() isinstance() pow() sum()
basestring() execfile() issubclass() print() super()
bin() file() iter() property() tuple()
bool() filter() len() range() type()
bytearray() float() list() raw_input() unichr()
callable() format() locals() reduce() unicode()
chr() frozenset() long() reload() vars()
classmethod() getattr() map() repr() xrange()
cmp() globals() max() reversed() zip()
compile() hasattr() memoryview() round() __import__()
complex() hash() min() set() apply()
delattr() help() next() setattr() buffer()
dict() hex() object() slice() coerce()
dir() id() oct() sorted() intern()

官网参考:http://docs.python.org/2/library/functions.html

2、工厂函数(factory function)

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

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

七、不支持类型

1、char与type

2、指针

3、int vs short vs long

4、float vs double

Python入门笔记(5):对象的更多相关文章

  1. Python学习笔记_Python对象

    Python学习笔记_Python对象 Python对象 标准类型 其它内建类型 类型对象和type类型对象 Python的Null对象None 标准类型操作符 对象值的比較 对象身份比較 布尔类型 ...

  2. [Python]Python入门笔记:语法基础

    Python笔记 一.基本语法 1.1 注释 文档注释: """contents""" 多行注释: ''' contents ''' 单行注 ...

  3. python入门笔记

    创建变量 python的变量不需要声明数据类型. >>> fred=100 >>> print (fred) 100 >>> fred 100 创 ...

  4. Python入门笔记(26):Python执行环境

    一.python特定的执行环境 在当前脚本继续进行 创建和管理子进程 执行外部命令或程序 执行需要输入的命令 通过网络来调用命令 执行命令来创建需要处理的输出 动态生成Python语句 导入Pytho ...

  5. Python入门笔记(25):Python面向对象(2)

    一.类 类就是一个数据结构,封装了数据和操作. 类的声明与函数的声明十分类似: class newClass(object): """class documentatio ...

  6. Python入门笔记(24):Python面向对象(1)速成

    一.Python经典类与新类 经典类:如果没有直接或间接的子类化一个对象,也就是说如果没有指定一个父类,或者是如果子类化的基本类没有父类,那么就定义了经典类: class classics: 'def ...

  7. Python入门笔记(23):模块

    一.模块基础 1.模块 自我包含,且有组织的代码片段就是模块 模块是Pyhon最高级别的程序组织单元,它将程序代码和数据封装起来以便重用.实际的角度,模块往往对应Python程序文件. 每个文件都是一 ...

  8. Python入门笔记(22):Python函数(5):变量作用域与闭包

    一.全局变量与局部变量 一个模块中,最高级别的变量有全局作用域. 全局变量一个特征就是:除非被删除,否则他们存活到脚本运行结束,且对于所有的函数都可访问. 当搜索一个标识符(也称变量.名字等),Pyt ...

  9. Python入门笔记(20):Python函数(3):关于lambda

    一.lambda函数 1.lambda函数基础: lambda函数也叫匿名函数,即,函数没有具体的名称,而用def创建的方法是有名称的.如下: """命名的foo函数&q ...

随机推荐

  1. 将w3cplus网站中的文章页面提取并导出为pdf文档

    最近在看一些关于CSS3方面的知识,主要是平时看到网页中有很多用CSS3实现的很炫的效果,所以就打算系统的学习一下.在网上找到很多的文章,但都没有一个好的整理性,比较凌乱.昨天看到w3cplus网站中 ...

  2. SQL SERVER 移动系统数据库

    移动系统数据库在下列情况下可能很有用: 故障恢复.例如,数据库处于可疑模式下或因硬件故障而关闭. 计划的重定位. 为预定的磁盘维护操作而进行的重定位. 移动 Master 数据库     在“开始”菜 ...

  3. javascript中apply()方法解析-简单易懂!

    今天看到了js的call与apply的异同,想着整理一下知识点,发现了一篇好文章,分享过来给大家,写的非常好! 参考: http://www.cnblogs.com/delin/archive/201 ...

  4. android中无限循环滑动的gallery实例

    android中无限循环滑动的gallery实例 1.点击图片有变暗的效果,使用imageview.setAlpha(),并且添加ontouchListener public void init() ...

  5. 查看kernel log命令

    adb shell "cat /dev/kmsg | grep -Ei "gesture""

  6. Apache2.4中开通HTTP基本认证

    Apache2.4中开通HTTP基本认证,需要在Apache的配置文件中增加如下代码 WSGIPassAuthorization On 否则则无法认证

  7. 天朝专用- 配置pypi镜像

    使用python者,需要经常安装模块,可是身在天朝.pypi.python.org 站点稳定性相当差,为了很更好的使用pip安装模块. 请使用镜像. mac/linux 环境 在用户当前目录下 如没有 ...

  8. php 反射

    一.通过{属性名} 对对象赋值.        $book=new Book();        $propertyName="name";        $propertyVal ...

  9. notepad++批量头尾追加

    每行首添加 在“查找目标”里输入上尖号“^”,上尖号代表每行的开头 每行尾追加

  10. android.support.v4包中的LruCache源码简读

    package android.util; import java.util.LinkedHashMap; import java.util.Map; /** * A cache that holds ...