嵌入Python脚本安装的ImportError:无模块命名的网站

问题描述:

您好我已经创建了一个应用程序,允许最终用户Python脚本。该应用程序的主要部分是用python编写的,我已经使用pyinstaller编译成exe文件,这很好,应用程序的一部分工作得很好。嵌入Python脚本安装的ImportError:无模块命名的网站

此应用程序然后调用嵌入Python中的DLL,这然后调用一些最终用户的Python脚本。当我测试它时没有任何问题,但是一旦我使用pyinstaller编译了程序,DLL会打印错误“ImportError:No module named site”。

我在Windows上使用Python 2.7。

从我可以从其他帖子讲这个与PYTHONHOME PYTHONPATH环境变量,我敢肯定,我可以从DLL中设置的一个问题。但是考虑到最终用户可能没有在他们的计算机上安装Python,我是否需要提供完整的Python 2.7安装程序和我的程序,将PYTHONHOME和PYTHONPATH更改为该安装?这是正确的方式去做这件事吗?

我得到这个工作的唯一方法是分发一些python 2.7与应用程序,即目录下的Python和DLL目录Python27与嵌入python的可执行文件在同一个文件夹中。

这克服了用户可能没有安装Python的问题,意味着他们将能够自己增加模块,蟒蛇“家”的本地应用程序。这基本上是我为了得到我想要的结果而做的。

https://*.com/a/2970407/722634

你是正确的。即使python不在他的系统中,最终用户也应该能够运行你的exe文件。相反,当最终用户运行你的exe时,你的exe应该调用pyx,pyo文件。而且,这些文件将被pyinstaller打包。此外,你需要确保你指向那些pyx,pyo文件的路径