是否可以创建一个可以从任何地方运行的适用于Windows的Python程序?

1 投票
3 回答
2592 浏览
提问于 2025-04-18 13:33

我觉得我的问题表达得不太好,这可能是我到现在还没找到答案的原因。

我用Python写了一个程序,并通过bdist_winisnt把它做成了一个可以安装的.exe文件。安装完这个程序后,我希望用户可以在任何地方运行它。因为这是一个命令行程序,所以我希望用户即使在不同的文件夹里,也能在命令行中输入example.py来运行这个程序。

这样做可能吗?有没有办法在setup.py里加一些路径指令,这样在安装时电脑就能一直知道这个程序在哪里?

我还想在Linux上也能做到这一点,这样做会一样吗?

我对编程还很陌生,所以我说的可能有些错误,提前道歉。

补充:结果发现其实有一个非常简单的方法,只需要在setup.py文件里加一行代码就可以了。

3 个回答

1

检查 PyInstaller

PyInstaller 是一个很不错的工具,可以用来制作可执行文件。

我在 Ubuntu 系统上测试过这个工具,但文档上说,Windows 系统也可以使用。

它有很多选项,其中一个就是可以生成一个单独的可执行文件,这个文件里包含了完整的 Python 环境。

2

你问题的好答案是:http://docs.python-guide.org/en/latest/shipping/freezing/

可以选择的工具有:

  • bbFreeze
  • py2exe(支持Python 3)
  • pyInstaller(不支持Python 3)
  • cx_Freeze
  • py2app(适用于Mac)

在这里输入图片描述

1

你的安装程序只是把 Python 脚本复制到指定的文件夹里。

要运行一个 Python 脚本,你需要先安装 Python。

你可以使用像 PyInstaller 这样的工具,把你的脚本(.py 文件)转换成一个可执行文件(在 Windows 上是 .exe)。这个工具的工作原理是,它把 Python 解释器和你的脚本一起打包成一个文件,这样你就可以方便地分发你的程序了。

在把脚本转换成可执行文件后,你需要把它添加到系统的路径中,这样操作系统才能找到它。完成这一步后,你就可以在任何文件夹里通过命令行运行你的程序了。

这个过程在 Linux 上也适用,不过你需要为不同的操作系统制作不同的可执行文件,因为 Windows 的可执行文件和 Linux 的是不一样的。

撰写回答