繁体   English   中英

在本地安装 Python 中的模块到脚本

[英]Install modules in Python locally to script

我有以下问题:我必须在 Windows 系统上运行一些测试/诊断 Python 脚本。 由于明确要求,系统没有默认的全系统 Python 实例,但安装了两个不同的 Python 实例,供系统上运行的应用程序在本地使用。 但是,这两个实例都缺少我的脚本使用的一些基本模块(如日志记录、urllib、configparser 等)。

我想运行%PYTHONPATH%\\python.exe myscript.py ,其中%PYTHONPATH%指向已安装的 Python 实例之一,但是%PYTHONPATH%之外的“某处”安装所需的附加模块(最好在我的脚本所在的同一目录中)已安装)以便我的脚本可以使用它们。

由于我的脚本是一个测试工具,它不应修改操作系统或已安装的软件,因此不应以任何方式更改%PYTHONPATH%下的 Python 安装。

还期望安装可以完全自动化,即。 最好的安装方法是将模块与我的脚本放在同一个 .zip 文件中,该文件被解压到目标路径上。

系统不能访问 Internet 也很重要,所以我必须在另一台机器上下载所需的文件并将它们复制到目标系统。

你能指导我怎么做吗?

我自己找到了一个答案 - 这很简单:

  1. 从适当的 Python 版本分发中获取包含标准模块的 zip 文件(在我的情况下它是文件python38.zip ,它位于可从 Python 站点下载的主 zip 文件中)
  2. 将此文件的内容解压到c:\\mydir\\Python38\\site-packages ,其中c:\\mydir是包含我的脚本的目录
  3. 在运行我的脚本之前设置环境变量PYTHONUSERBASE=c:\\mydir

现在我可以运行该脚本,它会在c:\\mydir\\Python38\\site-packages找到所有“缺失”的标准模块。

我认为你正在寻找的是一个 python 虚拟环境。 (需要互联网)

检查: https : //docs.python.org/fr/3/library/venv.html

然后对于安装,您可以创建一个包含所有依赖项的 .exe 文件。 (不需要网络)

检查: https : //www.pyinstaller.org/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM