09 2015 档案
摘要:类的授权 1.包装包装在Python编程世界中时经常会被提到的一个术语。它是一个通用的名字,意思是对一个已存在的对象进行包装,不管它是数据类型,还是一段代码,可以是对一个已存在的对象,增加新的,删除不要的,或者修改其他已存在的功能。在Python2.2以前,从Python的标准类型子类化或派生类都是...
阅读全文
摘要:用特殊方法定制类前面我们讲了方法的两个重要方面:首先,方法必须在调用前被绑定(到它们相应类的某个实例中);其次,有两个特殊方法可以分别作为构造器和解构器的功能,分别名为__init__()和__del__()。事实上,__init__()和__del__()只是可自定义特殊方法集中的一部分。它们中有...
阅读全文
摘要:一个类被定义后,目标就是把它当成一个模块来使用,并把这些对象嵌入到你的代码中去,同其他数据类型及逻辑执行流混合使用。有两种方法可以在你的代码中利用类。第一种是组合,就是让不同的类混合并加入到其他类中,来增强功能和代码重用性。你可以在一个大点的类中创建你自己的类的实例,实现一些其他属性和方法来增强原来...
阅读全文
摘要:绑定和方法调用现在我们需要再次阐述Python中绑定(binding)的概念,它主要与方法调用相关联。方法是类内部定义的函数,这意味着方法是类属性而不是实例属性。其次,方法只有在其所属的类拥有实例时,才能被调用。当存在一个实例时,方法才被认为是绑定到那个实例了,没有实例时,方法就是未绑定的。任何一个...
阅读全文
摘要:面向对象编程编程的发展已经从简单控制流中按步的指令序列进入到更有组织的方式中,依靠代码块可以形成命名子程序和完成既定的功能。结构化的或过程性编程可以让我们把程序组织成逻辑快,以便重复或重用。创造程序的过程变得更具逻辑性;选出的行为要符合规范,才可以约束创建的数据。迪特尔父子认为结构化编程是“面向行为...
阅读全文
摘要:变量作用域标识符的作用域是定义为其声明的可应用范围,或者即是我们所说的变量可见性。也就是,我们可以在程序的那个部分去访问一个制定的标识符。全局变量与局部变量定义在函数内的变量有局部作用域,在一个模块中最高级别的变量有全局作用域。全局变量的一个特征是除非被删除掉,否则它们将存活到脚本运行结束,且对于所...
阅读全文
摘要:这篇写了忘发。现在补上。Python不是也不大可能成为一种函数式的编程语言,但是它支持许多有价值的函数式编程语言构建。也有些表现的像函数式编程机制但是从传统上也不能认为是函数式编程语言的构建。Python提供的以四中内建函数和lambda表达式的形式出现。匿名函数与lambdalambda [arg...
阅读全文
摘要:函数是对程序逻辑进行结构化或过程化的一种编程方法。Python的函数返回值当什么也不返回时,返回了None和大多数语言一样,Python返回一个值或对象。只是在返回容器对象时,看起来像返回多个对象。这样在操作的时候显得很灵活,虽然它本质上只是反悔了一个对象。调用函数我们用一对圆括号电泳函数。任何输入...
阅读全文
摘要:模块是用来组织 Python 代码的方法,而包则是用来组织模块的。当代码量很大时,我们一般会把代码分成几个有组织的代码段,然后每个代码段之间有一定的联系。代码单之间是共享的,所以Python允许调入一个模块,允许使用其他模块的属性利用之前的工作成果,实现代码重用。那些自我包含并且有组织的代码片段就是...
阅读全文
摘要:程序在执行的过程中会产生异常,出现错误在以前的一个时期是致命的,后来随着程序的发展,使得一些错误的处理方式是柔和的,发生错误会产生一些错误的诊断信息和一些模糊的提示。帮助我们来处理异常。今天将学习Python的异常。程序会有语法或者逻辑上的错误,语法的错误会导致解释器或编译器无法工作,那么程序并U币...
阅读全文
摘要:文件对象文件对象不仅可以用来访问普通的磁盘文件,而且也可以访问其它任何类型抽象层面上的“文件”。一旦设置了合适的“钩子”,你就可以访问文件类型接口的其它对象,就好像访问的是普通文件一样。文件对象的处理要以来很多内建函数,还有很多函数会返回文件对象或者是类文件对象。进行这种轴向处理的主要原因是许多输入...
阅读全文
摘要:条件语句Python中的if语句如下:if expression: expr_true_suite其中expression可以用布尔操作符and, or 和 not实现多重判断条件。如果一个复合语句的的代码块仅仅包含一行代码,那么它可以和前面的语句写在同一行:if expression: doso...
阅读全文
摘要:Python里唯一的映射类型是字典。映射类型对象里,hash值(key)和指向的对象(值)是一对多的关系。字典对象是可变的,这一点上很像列表,它也可以存储任意个数任意类型的Python对象,其中包括容器类型。字典类型和序列类型的区别是存储和访问数据的方式不同。序列类型只用数字类型的键(从序列开始按数...
阅读全文
摘要:在使用Python的过程中,想输入账号和密码,但是密码会随着输入显示在屏幕上,为了解决这个问题需要用到msvcrt模块这里是使用代码import msvcrt, sysdef pwd_input(a): print str(a), chars = [] while True: ...
阅读全文
摘要:为什么要创造一个和列表差别不大的容器类型?元组和列表看起来不同的一点是元组用圆括号而列表用方括号。而最重要的是,元组是不可变类型。这就保证了元组的安全性。创造元组给它赋值和列表完全一样。除了一个元素的元组要在元组分割符里加一个逗号以防跟普通的分组操作符混淆。>>> aTuple = (1)>>> a...
阅读全文
摘要:列表和字符串类型很相似,是同样的序列式数据类型。但是字符串只能由字符组成,列表可以保留任意数目的Python对象的灵活的容器。Python的列表比C的数组要灵活,数组里面只能是一种类型,列表可以有多种。列表可以执行pop,empt,sort,reverse等操作,可以添加或减少元素。可以和其他的列表...
阅读全文