Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 无法使用py2exe将两个.py文件编译为独立的可执行文件_Python_Python 3.x - Fatal编程技术网

Python 无法使用py2exe将两个.py文件编译为独立的可执行文件

Python 无法使用py2exe将两个.py文件编译为独立的可执行文件,python,python-3.x,Python,Python 3.x,我无法将两个.py文件编译成不需要使用py2exe安装的独立可执行文件。我按照上的说明编写了安装文件,如下所示: from distutils.core import setup import py2exe import sys, os setup( options = {'py2exe': {'bundle_files': 1, 'compressed': True}}, windows=[{'script': "main.py"}], zipfile = None,

我无法将两个.py文件编译成不需要使用py2exe安装的独立可执行文件。我按照上的说明编写了安装文件,如下所示:

from distutils.core import setup
import py2exe
import sys, os

setup(
    options = {'py2exe': {'bundle_files': 1, 'compressed': True}},
    windows=[{'script': "main.py"}],
    zipfile = None,
    )
然而,我的问题是,我有两个.py文件,一个是我的主文件main.py,另一个是我的background_image.py文件,它包含基本的64个图像字符串。因此,py2exe将分别编译这两个文件,如下图所示:

因此,我在尝试运行主编译文件时收到以下错误

Traceback (most recent call last):
  File 'main.py", line 8, in <module>
ImportError: No Module named 'background_image'
这里是从background_images.py中缩短的background_image


将背景图像添加为数据文件:

setup(
    options = {'py2exe': {'bundle_files': 1, 'compressed': True}},
    windows=[{'script': "main.py"}],
    zipfile = None,
    data_files= [ ("prog",["background_image.py"])]
    )

不要使用bundle_files=1,它有太多问题。建议使用bundle_files=2,然后使用例如InnoSetup创建一个单文件安装程序。如果这还不能解决问题,请提供main.py和bg_image.py以及setup.py的一个小型独立示例。

为什么?错误表明没有名为background_image的模块,但其他模块编译良好。我在main.py中导入了background_image.py,所以它不应该工作吗?无论如何,我无法使你的解决方案起作用。@prole我至少意识到了部分问题,就是为什么你不能让它在上面工作。此外,您没有导入background_image.py,因此需要将其作为数据文件添加。您可能需要查看文档才能使其正常工作。其想法是我不必使用安装程序。这就是为什么我没有使用Inno。我会考虑你的其他建议,谢谢。
background_image = """
iVBORw0KGgoAAAANSUhEUgAA #... continues on
"""
setup(
    options = {'py2exe': {'bundle_files': 1, 'compressed': True}},
    windows=[{'script': "main.py"}],
    zipfile = None,
    data_files= [ ("prog",["background_image.py"])]
    )