Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.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创建单个文件可执行文件_Python_Tkinter_Py2exe_Distutils - Fatal编程技术网

Python 使用py2exe创建单个文件可执行文件

Python 使用py2exe创建单个文件可执行文件,python,tkinter,py2exe,distutils,Python,Tkinter,Py2exe,Distutils,我已经编写了一个python代码,它使用Tkinter显示一个窗口。 它还调用同一文件夹中的另一个python文件。 我使用py2exe将.py文件转换为.exe文件。但我面临以下问题: 输出(在dist文件夹中)是一组文件,而不是单个可执行文件 根据我对使用'bundle_files':1,'compressed':True的理解,我应该得到一个文件 现在我有两个.exe文件和一个文件夹:w9xpopen.exe,myframe.py(这是我的文件)和文件夹“tcl” 图标未更改 我在“

我已经编写了一个python代码,它使用Tkinter显示一个窗口。 它还调用同一文件夹中的另一个python文件。 我使用py2exe将.py文件转换为.exe文件。但我面临以下问题:

  • 输出(在dist文件夹中)是一组文件,而不是单个可执行文件

    • 根据我对使用
      'bundle_files':1,'compressed':True的理解,我应该得到一个文件
    • 现在我有两个.exe文件和一个文件夹:w9xpopen.exe,myframe.py(这是我的文件)和文件夹“tcl
  • 图标未更改

    • 我在“windows”部分提到了
      “icon\u资源”:[(0,“icon.ico”)]
  • 下面是我使用的设置.py

    from distutils.core import setup
    import py2exe, glob,sys,os
    
    sys.argv.append('py2exe')
    
    setup(
    
      options={'py2exe':{'bundle_files':1,'compressed':True}},
      windows=[{"script":'hr_data_downloader.py',"icon_resources":   [(0,"icon.ico")]}],
     data_files = [],
     zipfile=None
    )
    
    起初,我在运行可执行文件时遇到了问题,但在阅读了下面的文章之后,我通过显式添加两个DLL来纠正它

    请告诉我是否可以通过修改安装文件或任何其他py2exe文件来创建单个文件可执行文件。 另外,请告诉我为什么创建的.exe没有显示图标


    如果py2exe可以帮助我创建单文件可执行文件,我愿意尝试其他分发实用程序,如py2exe。

    我找到了使用PyInInstaller的方法。 虽然它使exe相当大,但我很高兴我只有一个文件

    以下是我所做的:

  • 已安装pyinstaller,pywin32
  • 打开命令提示符
  • 转到我的代码文件夹
  • 使用命令
    pyinstaller--onefile--windowedmyframe.py

  • pyinstaller手册有详细的说明。

    pyinstaller可用于从python项目生成单个可执行文件。
    步骤1:
    安装Pyinstaller

    第二步:
    在python安装目录(C:\Python27\)中提取文件
    将提取的文件夹重新保存到:pyinstaller
    第三步:
    现在在Python目录中打开命令提示符,
    使用命令:cd-pyinstaller

    (创建exe)
    使用命令:python pyinstaller.py您的_python_file.py

    (创建单个exe)
    use命令:python pyinstaller.py--onefile--打开您的_python_file.py的窗口
    (您的_python_file.py:它应该放在C:\Python27\pyinstaller\中)

    输出文件夹:C:\Python27\pyinstaller\main\dist