我有一个安装程序,它使用Python脚本来安装多个组件。如果用户没有安装Python,我不想在他们的计算机上安装它,也不希望安装Python成为使用我的安装程序的先决条件。是否有一种方法可以下载Python而不使用安装程序,只需从目录中运行它,在安装完成后很容易删除?
我有一个安装程序,它使用Python脚本来安装多个组件。如果用户没有安装Python,我不想在他们的计算机上安装它,也不希望安装Python成为使用我的安装程序的先决条件。是否有一种方法可以下载Python而不使用安装程序,只需从目录中运行它,在安装完成后很容易删除?
Portable Python是一个易于在Windows上使用的工具。如果您想创建.exe程序,请使用PyInstaller进行编译。它们可以相互兼容,您可以使用Portable Python编译(制作.exe文件),也可以使用可用的Portable Python 3。
懒惰的方法:检测Python是否存在。如果不存在,则要求用户将其安装为依赖项,例如Python下载页面上的链接。
重写脚本。如果逻辑不复杂,使用其他内置的shell脚本是个好主意。
静态链接Python。是的,静态链接是邪恶的。然而,这仍然是一个选择。 在Github和Google Code上找到一些有用的项目。
尝试使用cx_Freeze
这个程序可以将你的Python代码冻结成一个.exe文件和一些其他的pyd文件,它可以在没有安装Python的情况下运行。
注意:你需要安装Python来进行冻结,但是你不需要Python来运行该程序。
你可以从这里下载。
https://anthony-tuininga.github.io/cx_Freeze/index.html
冻结:
创建一个名为setup.py
的文件
输入命令
from cx_Freeze import setup, Executable
setup (name='NEW_EXE_FILE_NAME',
executables = [Executable("xx.py")])
xx.py 将是您想要冻结的 Python 代码。
命令行:python setup.py build
您可以使用Python的可嵌入包,下载链接在这里: Python Windows Releases
一旦您下载了该包,您只需要将其解压到一个文件夹中即可。就这样...安装完成。 您还可能想要安装pip来管理软件包,通过运行pip install脚本pip install script并将pip.exe的相对路径添加到python3xx._pth文件中。 PatriTech在YouTube上对该过程进行了很好的总结:Embedded Python Installation