摘要:
可调用对象代码对象一、可调用对象Python 有4 种可调用对象:函数,方法,类,以及一些类的实例。记住这些对象的任何引用或者别名都是可调用的。1、函数python 有3 种不同类型函数对象。第一种是内建函数。1)内建函数(BIFs)这些函数在_bulitin_模块里,并作为__builtins__块导入到解释器中。内建函数属性BIF 属性 描述bif.__doc__ 文档字符串(或None)bif.__name__ 字符串类型的文档名字bif.__self__ 设置为None(保留给built-in 方法)bif.__module__ 存放bif 定义的模块名字(或None)2)用户定义的函 阅读全文
摘要:
如何使用类来对有用的对象进行建模?一、Python和OOPPython和OOP实现可以概括为三个概念。继承 继承是基于Python中属性查找(在X.name表达式中)多态 在X.method方法中,method的意义取决于X的类型(类)封装 方法和运算符实现行为,数据隐藏默认是一种惯例。封装指的是在Python中打包,也就是把实现的细节隐藏在对象接口之后。这并不代表有强制的私有性。封装可以让对象接口的现实出现变动时,不影响这个对象的用户。1、不要通过调用标记进行重载不要在同一个类中对同一个方法名定义两次,后面的会覆盖前面,也不要对对象类型进行测试。应该把程序代码写成预期的对象接口。而不是特定类 阅读全文
摘要:
一、class语句一般形式class <name>(superclass,...): data=value def mothod(self,...): self.member=value在class语句内,任何赋值语句都会产生类属性。类几乎就是命名空间,也就是定义变量名(属性)的工具,把数据和逻辑导出给客户端。怎么样从class语句得到命名空间的呢?过程如下。就像模块文件,位于class语句主体中的语句会建立起属性。当python执行class语句时(不是调用类)会从头到尾执行其主体内的所有语句。在这个过程中,进行赋值运算会在这个类的作用域中创建变量名,从而成为对应类对象中的属性。 阅读全文
摘要:
先说说题外话,以前很少写blog,最开始有整理过技术文章到QQ空间,后面整理到WORD以及文本里。再后来网上查找资料的之后发现cnblog上面的蛮专业的。我也觉得把资料存放在网络中永远不会丢。所以就出现在这里了。 今天从五角场回来后,想起上个月买的《学习ruby》一书。买这个本书完全是因为puppet是ruby写的原因。多多少少会用到点ruby方面的知识。一大下午的时间翻阅了这个本数后,和原来判断是相同,ruby和python很有80%,甚至更多的相同之处。面向对象,数组,哈希表都和python基本相同。简单的对比后,我还是觉得python更好,更加简洁易懂。ruby一个功能有多重表现方式很. 阅读全文
摘要:
一、迭代器迭代器介绍的还不错的文章:http://www.cnblogs.com/huxi/archive/2011/07/01/2095931.html1、迭代器介绍Iterator是迭代器的意思,它的作用是一次产生一个数据项,直到没有为止。这样在 for 循环中就可以对它进行循环处理了。那么它与... 阅读全文
摘要:
函数可以计算出一个返回值。作用:最大化代码重用,最小化代码冗余,流程的分解。一、函数编写1、基本编写def是可执行的代码,实时执行的(Python中所有语句都是实时执行的)。if,while,def可嵌套,可以出现在任何地方,但往往包含在模块文件中。def创建了一个对象并将其赋值给某一个变量名。return将一个结果对象发送给调用者,如果函数中没有return语句,就会自动返回None对象函数是通过赋值(对象引用)传递的。参数通过赋值传递给函数。global声明了一个模块级的变量并被赋值。参数,返回值以及变量并不是声明def语句将创建一个函数对象并将其赋值给一个变量名。一般格式如下:def & 阅读全文
摘要:
一、模块模块是Pyhon最高级别的程序组织单元,它将程序代码和数据封装起来以便重用。实际的角度,模块往往对应Python程序文件。每个文件都是一个模块,并且模块导入其他模块之后就可以使用导入模块定义的变量名。模块可以由两个语句和一个重要的内置函数进行处理。import: 使客户端(导入者)以一个整体获取一个模块。from:容许客户端从一个模块文件中获取特定的变量名。reload:在不中止Python程序的情况下,提供了一个重新载入模块文件代码的方法。在一个模块文件的顶层定义的所有变量名都成为了被导入的模块对象的属性。模块至少有三个角色:代码重用:模块还是定义变量名的空间,被认作是属性。可以被多 阅读全文
摘要:
一:标准类型的分类* “基本”,是指这些类型都是Python 提供的标准或核心类型。* “内建”,是由于这些类型是Python 默认就提供的* “数据”,因为他们用于一般数据存储* “对象”,因为对象是数据和功能的默认抽象* “原始”,因为这些类型提供的是最底层的粒度数据存储?? “类型”,因为他们就是数据类型1、存储模型我们对类型进行分类的第一种方式, 就是看看这种类型的对象能保存多少个对象。Python的类型, 就象绝大多数其它语言一样,能容纳一个或多个值。一个能保存单个字面对象的类型,我们称它为原子或标量存储,那些可容纳多个对象的类型,我们称之为容器存储存储模型分类 Pytho... 阅读全文