Python类(5)

“.”

“.”之后的命名为 属性 --例如,表达式 z.real 中的 real 是对象 z 的一个属性。

类定义形式:

class ClassName:     

    <statement-1>    

    .     

    .

    . 

    <statement-N>

类的实例化

x = MyClass() 创建了一个新的类实例并将该对象赋给局部变量 x 。

方法

x.f()是一个方法对象,它可以存储起来以后调用。调用 x.f() 相当于 MyClass.f(x) 。

避免冲突的命名约定

可选的约定包括方法的首字母大写,数据属性名前缀小写(可能只是一个下划线),或者方法使用动词而数据属性使用名词,通常方法的第一个参数命名为 self 。

派生类的定义

class DerivedClassName(BaseClassName):     

    <statement-1>    

    .     

    .

    . 
    <statement-N>

isinstance() 函数 

用于检查实例类型: isinstance(obj, int) 只有在 obj.__class__ 是 int 或其它从 int 继承的类型 。

issubclass()函数 

用于检查类继承: issubclass(bool, int) 为 True ,因为 bool 是 int 的子类。但是, issubclass(unicode, str) 是 False ,因为 unicode 不是 str 的子类(它们只是共享一个通用祖先类 basestring )。

多继承的类定义

class DerivedClassName(Base1, Base2, Base3):

     <statement-1>

     .

     .

     . 
    <statement-N> 

对于旧式的类,唯一的规则顺序是深度优先,从左到右。因此,如果在 DerivedClassName (示例中的派生类)中没有找到某个属性,就会搜索 Base1 ,然后(递归的)搜索其基类,如果最终没有找到,就搜索 Base2 ,以此类推。

os.getcwd()

返回当前工作目录。

os.chdir()

改变当前工作目录。

glob 模块

提供了一个函数用于从目录通配符搜索中生成文件列表。

>>> import glob 
>>> glob.glob('*.py') 
['primes.py', 'random.py', 'quote.py'] 

math 模块

为浮点运算提供了对底层C函数库的访问。

random

提供了生成随机数的工具。

用于访问互联网以及处理网络通信协议的模块

其中最简单的两个是用于处理从urls接收的数据的 urllib2 以及用于发送电子邮件的 smtplib 。

datetime 模块

为日期和时间处理同时提供了简单和复杂的方法。支持日期和时间算法的同时,实现的重点放在更有效的处理和格式化输出。该模块还支持时区处理。

数据压缩模块

以下模块直接支持通用的数据打包和压缩格式: zlib, gzip, bz2, zipfile 以及 tarfile。

doctest 模块

提供了一个工具,扫描模块并根据程序中内嵌的文档字符串执行测试。测试构造如同简单的将它的输出结果剪切并粘贴到文档字符串中。

unittest 模块

不像 doctest 模块那么容易使用,不过它可以在一个独立的文件里提供一个更全面的测试集。

xmlrpclib 和 SimpleXMLRPCServer 模块

实现了在琐碎的任务中调用远程过程。尽管有这样的名字,但用户不需要直接处理 XML ,也不需要这方面的知识。

email 包

它是一个邮件消息管理库,可以处理 MIME 或其它基于 RFC 2822 的消息文档。不同于实际发送和接收消息的 smtplib 和 poplib 模块,email 包有一个用于构建或解析复杂消息结构(包括附件)以及实现互联网编码和头协议的完整工具集。

xml.dom 和 xml.sax 包

为流行的信息交换格式提供了强大的支持。同样, csv 模块支持在通用数据库格式中直接读写。综合起来,这些模块和包大大简化了 Python 应用程序和其它工具之间的数据交换。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值