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

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方法调用命令行代码,返回输出的对象,然后再将此写入文件中:

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)

不过这样显然麻烦了,还有更简单的方法:

$ pip freeze >requirements.txt

这样就直接将信息导出到文件中了

requirements.txt文件内容如下:

在另一台服务器上想部署相同的包,只需运行:

$ pip install -r requirements.txt

总结

到此这篇关于导出python安装的所有模块名称和版本号到文件中的文章就介绍到这了,更多相关python 模块名称版本号导出内容请搜索呐喊教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持呐喊教程!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。