如何导出python安装的所有模块名称和版本号到文件中

2020-10-29 16:47:32 浏览数 (1)

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!

0 人点赞