dir()是python中内置的命令返回一个字符串数组,能够用来查看一个module声明的名称。经过dir(module_name)查看一个module声明的名称,不提供参数的状况下会返回当前文件的声明信息。 html
module自己就能够做为python脚本执行,命令行中经过python module.py能够直接执行module,除此之外在import时若是被引入的module中有独立的代码(即不是class或者function的定义)也会被执行。若是但愿只在做为独立脚本是被执行,能够写成以下: python
if __name__ == '__main__': print('your code.')
python会经过两个地方查找被引入的module——builtins和sys.path。builtins是python内置的标准函数库,可能因不一样的平台而有所不一样,sys.path则分为项目目录和PYTHONPATH两部分。当一个module被引入时,python先查找builtins,若是没有找到则尝试在当前目录查找,若是仍然没有则查找PYTHONPATH也就是python的site-package目录。所以若是在项目目录中声明了和PYTHONPATH中同名的module,那么项目目录中的module会优先加载。 shell
python中的package就是代码在的目录路径,经过"."的表达式标识。在pythong中能够经过from aaa.bbb import ccc和import aaa.bbb.ccc或者fromaaa import bbb.ccc来达到引入ccc的目的,不一样之处是import以后的内容在使用时须要提供全名称,也就是上述三种写法在使用时分别要调用:ccc.fun()、aaa.bbb.ccc.fun()、bbb.ccc.fun()。
package所在的目录须要包含一个空文件__init__.py来代表这个是一个python package,同时在__init__.py文件中能够声明一些描述性的代码来变动package的特性。好比针对import *的__all__,正常状况下咱们写from aaa.bbb import *会引入位于aaa/bbb目录下的全部modules——这是一个很差的实践,由于有些东西可能会有反作用。特别的若是某个package下有你明确不但愿被引用的py文件,能够经过__all__明确说明哪些是但愿引入的,这样在python处理import *时会忽略掉不在__all__列表的内容。以下面的__init__.py指明了在import *时只有persons这个module会被引入。 django
__author__ = 'Administrator' __all__ = ['persons',]
pip是用于安装PyPI中所列出的package的工具。PyPI即Python Package Index,是python提供的一个lib的在线仓库相似于Java的maven。pip的功能包括几方面:安装、卸载、升级、查看和本地安装、配置。 数组
pip用于安装package的命令install,使用命令pip install somepackage完成安装。通常状况下pip会选择最新的版本安装,能够经过参数version指定但愿的package版本。除了单个package的安装pip还能够经过requirement file进行批量安装,命令:pip install -r requirement.txt。requirement file自己就是一个包含多个package列表文本文件,而且能够接受version等参数。使用requirement file的目的包括: 缓存
pip还支持wheel格式的安装,wheel是一种package的压缩格式要比经过源码的安装快速,默认状况下pip优先选择wheel格式安装,只有在没法找到wheel文件时才会从源文件安装。wheel是pip的一个模块,经过一下命令能够把源文件打包成wheel和从指定wheel文件安装package: 网络
#打包 pip wheel --wheel-dir=/your_wheel_directory -r requirement.txt #安装 pip install --no-index --find-links=/your_wheel_directory -r requirement.txt
#下载 pip install --download <DIR> -r requirements.txt #安装 pip install --no-index --find-links=[file://]<DIR> -r requirements.txt
#查看已经安装的package pip list #查看过时的package pip list --outdated #查看某个package的详细 pip show Django
pip install --upgrade --no-deps SomePackage pip install SomePackage
不一样的操做系统平台pip的安装文件位置有所不一样,Linux和MacOS中位于%HOME%/pip/pip.conf,Windows下位于%HOME/pip/pip.ini。pip的配置能够分为两个做用范围:总体和子命令。好比: maven
[global] timeout = 60 [freeze] timeout = 10
#设置环境变量 export PIP_DEFAULT_TIMEOUT=60 #命令行参数 pip --default-timeout=60 [...]