Python模块与类

2017-09-13 10:33:18来源:oschina作者:bithup人点击

分享

类的定义,继承


类中的属性,类属性和实例属性的区别及访问方式


变量名以“_”或“__”开头,实现变量的访问控制


类的初始化函数


创建实例


类的内置属性



类属性
含义


__name__
类的名字(字符串)


__doc__
类的文档字符串


__bases__
类的所有父类组成的元组


__dict__
类的属性组成的字典


__module__
类所属的模块


__class__
类对象的类型

self指向类或实例本身,相当于this


实例方法的第一个参数必须是”self”


类方法,实例方法,静态方法


装饰器@staticmethod

模块

open()函数


dir()函数:查看一个对象(模块、数据类型等)包括哪些属性和方法


sys.modules.keys()


['__builtins__', '__doc__', '__name__', '__package__']

模块导入的过程:

如果是第一次导入模块,首先找到模块文件
将模块文件编译成字节码
执行字节码中的代码,在内存中生成该模块,并创建pyc文件
第二次导入时会忽略上面的步骤 导入与删除模块:import/import as/from import/del

系统导入模块时搜索路径的顺序:

当前程序的运行目录
Python的环境变量目录
标准库目录
.pth文件中的目录

Python还可以导入其他类型文件,如:编译后的pyc文件,c语言的扩展dll/so/pyd


自定义模块与安装模块:

自定义模块文件,直接加入到标准模块库中即可使用 添加临时模块目录:


import sys
sys.path.append()
//移除临时路径
sys.path.remove()

第三方模块的安装:


#使用模块的安装脚本
python setup.py install
#easy_install模块安装
#先安装easy install模块
#然后使用easy_install安装其他模块
#使用pip安装模块
pip install xxx

思考:直接将模块文件放入lib目录下,与安装模块有什么区别?


用其他语言实现模块:


pyc文件:


模块、包、命名空间及变量作用域
命名空间:内建命名空间
全局命名空间
局部命名空间 __name__和__main__

__name__是Python程序的内置属性,属性的值由该模块程序的运行方式决定


Python模块既可以直接运行,也可以被其他模块调用而运行


如果模块是被直接执行的,__name__的值为__main__;


如果模块是被调用执行的,__name__的值为模块名;



为了解决模块同名的问题,可以将模块放在不同的包下,导入时带上包名


包的结构

包目录,目录名即包名,可以包含多层目录
每个包目录下都要有__init__.py模块,该模块可为空,也可以写代码,该模块的模块名与目录名相同
每个包目录下都可以包含其他模块文件 内建函数

机器学习库:http://blog.csdn.net/m53931422/article/details/42489897

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台