Python 模块 概念
python中的模块是什么?简而言之,在python中,一个文件(以“.py”为后缀名的文件)就叫做一个模块,每一个模块在python里都被看做是一个独立的文件。模块可以被项目中的其他模块、一些脚本甚至是交互式的解析器所使用,它可以被其他程序引用,从而使用该模块里的函数等功能,使用Python中的标准库也是采用这种方法。
分类
在Python中模块分为以下几种:
- 系统内置模块,例如:sys、time、json模块等等;
- 自定义模块,自定义模块是自己写的模块,对某段逻辑或某些函数进行封装后供其他函数调用。注意:自定义模块的命名一定不能和系统内置的模块重名了,否则将不能再导入系统的内置模块了。例如:自定义了一个sys.py模块后,再想使用系统的sys模块是不能使用的;
- 第三方的开源模块:这部分模块可以通过pip install进行安装,有开源的代码;
一般查看python下安装了什么包,我们可在命令行模式下输入
$ pip list
输出结果:
Package Version ———————————- ——— absl-py 0.9.0 alabaster 0.7.12 altgraph 0.16.1 anaconda-client 1.7.2 anaconda-navigator 1.9.7 anaconda-project 0.8.3 asn1crypto 1.0.1 …
2 也可以
$ pip freeze
输出结果:
absl-py==0.9.0 alabaster==0.7.12 altgraph==0.16.1 anaconda-client==1.7.2 anaconda-navigator==1.9.7 anaconda-project==0.8.3 asn1crypto==1.0.1 …
在python代码中,可以用os.popen方法调用命令行代码,返回输出的对象,然后再将此写入文件中:
代码语言:javascript复制import os
installed_module_list = os.popen("pip freeze")
# print(installed_module_list)
with open("requirements.txt",'w') as f:
for m in installed_module_list.read():
f.write(m)
不过这样显然麻烦了,还有更简单的方法:
代码语言:javascript复制$ pip freeze requirements.txt
这样就直接将信息导出到文件中了
requirements.txt文件内容如下:
在另一台服务器上想部署相同的包,只需运行:
代码语言:javascript复制$ pip install -r requirements.txt
总结
到此这篇关于导出python安装的所有模块名称和版本号到文件中的文章就介绍到这了,更多相关python 模块名称版本号导出内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn!