python中的模块以及package的小结
来源:互联网 发布:小熊相机软件 编辑:程序博客网 时间:2024/06/07 02:07
1.python中的module以及package
Python的程序由包(package)、模块(module)、类以及函数组成。包是由一系列模块组成的集合。模块是处理某一类问题的函数和类的集合。如下图所示:
python中的module和package是python模块编程的体现,以及实现命名空间的隔离。
(1)python中一个module就是一个*.py文件,模块名称就是文件的名称。
(2)python中的package在文件系统中表现出来的就是一个目录,这个目录中可以包含众多的module以及其他的子package。而且这个目录中一定要有一个__init__.py文件,这个文件的存在才意味着该目录是python中的一个package。
备注:__init__.py可以是空文件,也可以有一些初始化的代码。
2.import导入package或module的时候做了什么?
当执行import package_name.module_name时,会执行package_name目录下的__init__.py以及module_name文件。
3.import导入函数|类|module|package
import module_name #module_name.foo()表示调用module_name中foo函数import package_name #如果package_name中__init__.py文件中导入了具体模块module_name,那么可以用package_name.module_name来使用module_name中的功能,否则是不行的import package_name.module_name #package_name.module_name.foo() 表示使用module_name中的foo函数from package_name import module_name #module_name.foo() 表示使用module_name的foo函数from package_name.module_name import foo #直接使用foo()就可以啦备注:import module_name.foo 是非法的。
4.module和package中的一些特殊的变量
(1)module中的__main__变量
当使用import导入module时,该变量就是模块名或文件名(不带后缀哦);当直接执行module的.py文件时,__main__变量就是__main__
(2)package中的__init__变量
__init__变量是一个元组,我们可以给这个变量赋值,eg:__all__ = ['Module1', 'Module2', 'Package2'] 当我们使用from package_name import *会执行__init__.py,这时就会导入__all__元组中定义的module或子package啦
- python中的模块以及package的小结
- Python中的模块(module)和包(package)
- Python的collections模块小结
- Python 安装 模块/Package
- Python中第三方的库(library)、模块(module),包(package)的安装方法以及ImportError: No module named
- Python里 模块、Package概念
- 关于python导入模块和package的一些深度思考
- Python中的不同package
- Python中的Package机制
- Python模块小结
- python爬虫模块小结
- python的package import 以及相对导入和绝对导入
- python 3 中的 os 以及 os.path 模块的使用详解!阿波的博客
- python的IO,以及codecs模块
- 常用的Python模块以及主要作用
- 【Python】Python中的模块的概念
- python tornado主要模块以及模块之间的关系
- base64编码原理以及python中的base64模块
- jquery的DOM定位与操作
- C++ Eigen库计算矩阵特征值及特征向量
- 用到泛型的一些代码
- 使用Android Studio 1.3 版本进行NDK开发准备工作
- java单链表常用操作
- python中的模块以及package的小结
- 远程部署tomcat工程到Linux服务器
- js 标题元素搜索
- 常量指针和指针常量
- Zend Guard 6 使用教程
- JAVA中的树的遍历
- [NT API] Open Any Registry Key for Full Access
- 搭建SpringMVC框架
- Android工程各个文件夹的功能区别