首页 > 解决方案 > 在 Python 中本地安装模块到脚本

问题描述

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

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

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

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

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

你能指导我怎么做吗?

标签: pythonwindowspython-module

解决方案


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

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

现在我可以运行脚本,它会在c:\mydir\Python38\site-packages.


推荐阅读