精华内容
下载资源
问答
  • python打包py文件生成exe,以及运行exe产生的问题 1 安装pyinstaller pip install pyinstaller 我这里已经安装过了,就不再多说啦! 2 用pyinstaller进行打包 (1)选项: -F:表示生成单一的exe文件 -w:表示执行exe...

    python打包py文件生成exe,以及运行exe产生的问题

    1 安装pyinstaller

    pip install pyinstaller

    我这里已经安装过了,就不再多说啦!
    在这里插入图片描述

    2 用pyinstaller进行打包

    (1)选项:
    -F:表示生成单一的exe文件

    -w:表示执行exe文件时去除背后的dos窗口 ps:建议最初试验时保留dos,可以查看是否有错误发生

    -p:有些需要手动添加包的位置(dir1,dir2)多个地址时以分号分开

    -i:加入图标

    (2)打包一个py文件 添加图标(格式为ico的图片):
    pyinstaller -F XXX.py -i XX.ico
    (3)打包多个py文件:
    pyinstaller -F XXX.py -p XX.py -i XX.ico(以此类推)

    运行以后,会生成dist和build两个文件夹,exe在dist文件夹下。如果程序需要用到附加的文件则添加到dist文件夹中即可。

    3 运行打包后的 多进程exe程序出现的问题

    运行之后 我发现计算机不怎么响应了,而且很卡,打开任务管理器:

    在这里插入图片描述
    一会电脑就马上挂掉啦!这并不是我们想要的结果

    接着在网上一番百度,终于找到解决问题的办法:
    pyinstaller版本小于3.3的windows附加代码(不过我的版本是3.4的不知道为什么还会出现这个问题,反正添加上后程序运行就正常啦)

    新建一个wenke.py文件 添加如下代码:

    import os
    import sys
    import multiprocessing
    
    # Module multiprocessing is organized differently in Python 3.4+
    try:
        # Python 3.4+
        if sys.platform.startswith('win'):
            import multiprocessing.popen_spawn_win32 as forking
        else:
            import multiprocessing.popen_fork as forking
    except ImportError:
        import multiprocessing.forking as forking
    
    if sys.platform.startswith('win'):
        # First define a modified version of Popen.
        class _Popen(forking.Popen):
            def __init__(self, *args, **kw):
                if hasattr(sys, 'frozen'):
                    # We have to set original _MEIPASS2 value from sys._MEIPASS
                    # to get --onefile mode working.
                    os.putenv('_MEIPASS2', sys._MEIPASS)
                try:
                    super(_Popen, self).__init__(*args, **kw)
                finally:
                    if hasattr(sys, 'frozen'):
                        # On some platforms (e.g. AIX) 'os.unsetenv()' is not
                        # available. In those cases we cannot delete the variable
                        # but only set it to the empty string. The bootloader
                        # can handle this case.
                        if hasattr(os, 'unsetenv'):
                            os.unsetenv('_MEIPASS2')
                        else:
                            os.putenv('_MEIPASS2', '')
    
    
        # Second override 'Popen' class with our modified version.
        forking.Popen = _Popen
    
    

    然后在mul_process.py中加入:

    import wenke
    

    然后在if __name__ == '__main__':下面加入:

    multiprocessing.freeze_support()
    

    添加完后,再次进行打包,运行程序 ok! 大功告成

    展开全文
  • Python的.py文件生成exe(亲测有效)

    千次阅读 2019-01-27 08:08:05
    命令生成exe 效果图 安装PyInstaller 为了大家少走弯路,我直接给大家个链接下载就好了 我是链接 把这个下载之后解压放在任意的地方,我的放在桌面上了. 准备个.py文件 我在这里准备了我实训的时候根据json...

    目录

    安装PyInstaller

    准备个.py文件

    命令生成exe

    效果图


    安装PyInstaller

    为了大家少走弯路,我直接给大家个链接下载就好了   我是链接

    把这个下载之后解压放在任意的地方,我的放在桌面上了.

    准备个.py文件

    我在这里准备了我实训的时候根据json接口写的爬取天气信息的一个py文件

    import requests, json
    
    
    class Weather(object):
        def __init__(self):
            self.ip_api = 'https://api.map.baidu.com/location/ip?ak=KHkVjtmfrM6NuzqxEALj0p8i1cUQot6Z'
            self.weather_api = 'http://api.map.baidu.com/telematics/v3/weather?location={}&output=json&ak=TueGDhCvwI6fOrQnLM0qmXxY9N0OkOiQ&callback=?'
    
        def get_current_city(self):
            resopnse = requests.get(self.ip_api)
            city_dict = json.loads(resopnse.text)
            city = city_dict['content']['address_detail']['city']
            return city
    
        def get_weather(self,city):
            api = self.weather_api.format(city)
            response = requests.get(api)
            air_text = response.text
            tmp = json.loads(air_text)
            tmp = tmp['results']
            res_data = tmp[0]
            city = res_data['currentCity']
            pm = res_data['pm25']
            suggestions = [res_data['index'][0]['des'], res_data['index'][2]['des'], res_data['index'][2]['des'], res_data['index'][3]['des']]
            today = res_data['weather_data'][0]
            tommorrow = res_data['weather_data'][1]
            tdat = res_data['weather_data'][2]
            tdatdat = res_data['weather_data'][3]
            print('\t\t\t\t天气预报')
            print('\t\t\t\t\t\t\t\tBy jdq')
            print('\t当前城市:{}'.format(city))
            print('\t日期:', today['date'], '天气:', today['weather'], '风:', today['wind'], '温度:', today['temperature'])
            print('\t四条小建议:')
            print('\t1.', suggestions[0])
            print('\t2.', suggestions[1])
            print('\t3.', suggestions[2])
            print('\t4.', suggestions[3])
            print('\t未来三天的天气')
            print('\t日期:', tommorrow['date'], '天气:', tommorrow['weather'], '风:', tommorrow['wind'], '温度:', tommorrow['temperature'])
            print('\t日期:', tdat['date'], '天气:', tdat['weather'], '风:', tdat['wind'], '温度:', tdat['temperature'])
            print('\t日期:', tdatdat['date'], '天气:', tdatdat['weather'], '风:', tdatdat['wind'], '温度:', tdatdat['temperature'])
    
    
    if __name__ == '__main__':
        obj = Weather()
        obj.get_weather(obj.get_current_city())
        while True:
            city = input('输入城市名查天气(输入bye退出):')
            if city == 'bye':
                print('Are you sure? y or n')
                res = input()
                if res == 'y':
                    break
                else:
                    city = input('输入城市名查天气:')
            obj.get_weather(city)
    

    把这个文件放在我们刚才解压pyinstaller文件夹下面

    命令生成exe

    window+r打开命令行

    先cd把当前路径转移到我们的解压pyintsaller的路径下

    cd C:\Users\jdq8576\Desktop\PyInstaller-3.4
    

    使用命令生成exe

    执行下面的命令会生成一个与py文件同名的文件夹,exe在其子文件夹dist放着

    python pyinstaller.py -F spider.py
    

    如果我们要改图标可以用下面的这个命令,可能不会立即生效,应该是window缓冲问题,exe改个名字就刷新出来了.

    注意这个图片必须是ico类型的,可以提供个 链接 把我们普通的图片生成ico类型的

    python pyinstaller.py -F -i 1.ico spider.py

    效果图

    展开全文
  • exe文件是所有电脑都能打开的,但是Python生成的就是py文件,没有安装交互解释器的朋友都打不开,而且任何编程语言最后都是要生成为一个exe文件的 首先需要下载一个生成exe的库:pyinstaller 用pip指令:pip ...

    exe文件是所有电脑都能打开的,但是Python生成的就是py文件,没有安装交互解释器的朋友都打不开,而且任何编程语言最后都是要生成为一个exe文件的

    在这里插入图片描述
    首先需要下载一个生成exe的库:pyinstaller
    用pip指令:pip install pyinstaller
    在Powershell中下载如下,cmd也差不多
    在这里插入图片描述
    注意:下载如果出错,可能是因为拥有多个版本从而注册多个环境变量,所以去环境变量,删掉多余的Script文件夹变量,保留一个

    下一步:创建一个测试文件夹。我的如下,名字随便
    在这里插入图片描述
    然后找到一个图标文件,什么图标都可以,必须是.ico文件
    在这里插入图片描述在这里插入图片描述
    放在同一个文件夹中
    再次打开终端,用cd指令进入目标文件夹,然后输入(我自己按照我的文件名):pyinstaller -F -i ICON1.ico Button.py
    格式就是:pyinstaller -F -i 图标文件 py文件
    然后出现如下反应
    在这里插入图片描述
    在这里插入图片描述
    如果大概是这样,那就成功了,安装失败点击这里再次打开文件夹,打开dist文件夹,就有exe了

    注意:其他文件夹不要动

    生成完就是这个
    在这里插入图片描述

    exe文件
    在这里插入图片描述

    安装失败问题

    如果最后一行输出这个

    在这里插入图片描述
    原因:代码不是UTF-8或者Python可以识别的类型,记事本打开这个文件,重新另存为,选择编码为:UTF-8

    展开全文
  • 在初次使用pyinstaller打包.py文件时,往往会遇到很多意想不到的问题,下面结合我的经历来讲讲如何使用pyinstaller打包.py文件。 作用:生成不依赖python环境的,可以直接执行的程序,使用Pyinstaller打包python...

            pyinstaller 是目前被认为比较好使的python程序打包工具。在初次使用pyinstaller打包.py文件时,往往会遇到很多意想不到的问题,下面结合我的经历来讲讲如何使用pyinstaller打包.py文件。

    作用:生成不依赖python环境的,可以直接执行的程序,使用Pyinstaller打包python程序为单文件exe

    常用的参数:

    • -h 查看帮助
    • -F 生成的文件不依赖其他库,可以单独执行
    • -D 或者–onedir 生成程序放置的文件夹
    • –clean 清理打包过程中的临时文件

    一般会主要使用l-F,或者-D。

    1. 当使用 xxx.py当前文件夹>pyinstaller -F xxx.py 会在xxx.py当前文件夹下生成一个dist文件夹,且dist文件夹下有一个xxx.exe文件,
    2. 当使用 xxx.py当前文件夹>pyinstaller -D xxx.py 会在xxx.py当前文件夹下生成一个dist文件夹,dist文件夹下有一个xxx.exe文件和一堆依赖文件,这些依赖文件就是自己源程序中调用的模块和环境依赖。

          我在打包中遇到的问题:python环境是Anconda+Python3.7.2,64位系统

           1、网上有很多人遇到pyinstaller装错32位或64位版本的,在这里提供一个最简单的方法,写一个hello world的py程序,如果这个能成功打包exe文件并成功运行,说明和pyinstaller无关,你的环境是对的,只是缺少“一些”第三方依赖文件。

           2、因为pyinstaller只有3.4版本,所以用3.7版的python打包出现兼容问题~~,刚开始打包失败,然后就换了3.5版本的python,然后,,就没有然后了,后来发现其实3.7也可以打包成功,所以我走了一些弯路,网上的东西有很多都是不适用自己现在遇到的问题的。

           3、报"RuntimeError: maximum recursion depth exceeded in comparison "

    出现原因:python默认迭代次数有限(大概是1000左右),如果你引用了plot画图,或者某个循环方法超出此限制,就会报这个错误。

    解决方法:打包失败,也会生成一个spec文件,如你的主python文件叫做Main.py,则修改Main.spec:

    添加代码行: import sys

                           sys.setrecursionlimit(1000000)

    然后在命令行中用此spec文件打包python程序:pyinstaller -F Main.spec

             4、打包失败回滚,然后报了一次代码乱码问题,我忘记了具体的错误提示,解决是在命令行先输入chcp 65001,转到utf-8代码页,

              5、打包后生成.exe文件,但是双击会打印一些错误日志,然后退出。在命令行执行会提示: ModuleNotFoundError:No module named typedefs之类的问题

    解决方法:需要把提示中缺少的模块放到.spec文件中的 hiddenimports=[]中然后再去pyinstaller -F Main.spec 再次执行打包操作。比如缺少sklearnhiddenimports = ['sklearn']

    目前就遇到这些问题。

    展开全文
  • 1.安装pyinstaller pip install pyinstaller ps:如果提示: 可以采用cd到安装python中的Scripts...我的程序是checkfiles.py调用check_part1.py,同时还附加一个txt文件,在利用pyinstaller打包时,再dos窗口先...
  • Python环境配置不同,安装pyinstaller的方法和生成exe文件的操作方法也不同。 这里给出Anaconda环境下,pyinstaller的安装和使用的方法,不需要专门到网站下载,在Anaconda Prompt里输入两条指令即可,比较简单。 ...
  • 执行这个之后生成了build目录和exe文件,但发现exe存在闪退问题: 查了一下说缺少相关包,继续下载: pip install pypiwin32 -i https://pypi.tuna.tsinghua.edu.cn/simple https://www.lfd.uci.edu/~goh
  • python如何将.py文件生成.exe文件 1.安装好python。 2.安装pyinstaller。 (1)windows+R键运行,输入cmd,回车,然后输入pip install pyinstaller,回车,等待安装完毕。 (2)安装完后可输入pip list检查是否安装...
  • Python之.py文件生成.exe可执行文件小记 一、写在前面的话 二、Python之.py文件生成.exe可执行文件过程 叮嘟!这里是小啊呜的学习课程资料整理。好记性不如烂笔头,今天也是努力进步的一天。一起加油进阶吧!
  • 将.py文件生成.exe文件

    千次阅读 2019-05-04 20:01:52
    1.打开cmd窗口,命令行输入:pip install pyinstaller 2.安装成功后在命令行输入:pyinstaller.exe -F +路径 3.将dist里面的.exe文件复制到和... 将你的文件直接编译成EXE文件,然后直接拖入cmd里。cmd就不会退出。 ...
  • 使用第三方库PyInstaller实现.py文件快速生成exe文件可执行文件 (cmd命令行)pyinstaller -F <文件名.py> 注意 首先要将cmd命令行的路径切换到.py文件所在的文件夹目录下 例如:我的.py文件在桌面的code...
  • Python py文件生成exe,打开后闪退

    千次阅读 2019-09-18 07:15:52
    1.在py文件程序结尾添加一行input("输入任意键结束")2.重新打包exe
  • 1。安装pyinstaller ...2.找到要打包的py文件目录,打开cmd,输入命令: pyinstaller -f 1.py # 注:如打包的exe运行后无需黑框,请输入pyinstaller -f 1.py --noconsole 3.exe文件在dist文件夹中 ...
  • 生成exe的时候考虑到了第三方扩展包的问题,在cmd 的D:\AA>路径下输入: pyinstaller -F -p D:\python3\psychopy; AA4.0.py 生成的.exe文件在执行时出现如下报错: D:\AA>dist\AA4.0 [1 2 3 4 5] Hello ward Enter...
  • 目前有一个python脚本,需要在别的电脑中运行,安装python环境太麻烦,封装成exe文件,运行比较方便。 二、演示 环境说明 python版本:3.7.9 操作系统:windows 10 安装模块 pip3 installer pyinstaller 封装 新建...
  • D:>pyinstaller -i bitbug_favicon.ico -F seg_7.py 利用pyinstaler下的-i和-F参数 转换D:下的seg_7.py
  • 版权声明:转载请注明作者(独孤尚良dugushangliang)出处:https://blog.csdn.net/dugushangliang/article/details/100761976 时常觉得pyinstaller的打包很玄幻,不一定...直接打包后生成exe文件报错Failed to...
  • Python:如何将py文件打包生成exe文件

    千次阅读 2018-01-30 18:17:40
    双引号里面的图标文件,要放置到pyinstaller文件目录下,作为最后生成exe文件的图标显示 ) 5、最后说一下 生成的exe文件,在pyinstaller文件夹下会生成test文件夹,在test文件夹下的dist文件夹中...
  • 使用pyinstaller打包py文件exe文件

    千次阅读 2017-11-07 23:14:21
    进入命令行cmd,进入到需要打包的py文件所在的文件夹目录: 可以使用pyinstaller XXX.py的命令打包: 在exe目录中会生成dist和build文件夹,build文件夹可以安全删除,dist文件夹中存在打包好的solve.exe和动态...
  • 之前其实已经用过几次这个方法了,很好用,可以实现的效果是将py文件打包封装成一个单独的EXE文件,复制到没有安装Python运行环境的电脑上也可以直接双击运行,还能自定义exe的图标,过程记录一下安装pyinstallerpip ...
  • 一、安装pyinstaller ...二、将.py文件转为exe可执行文件 在命令行中输入: pyinstaller -F -w D:\aa\xx.py(文件路径) 转换成功后,可以在上图箭头所指的路径中查看生成的.exe可执行文件。 ...
  • py文件exe文件转换

    千次阅读 2018-09-13 10:13:08
    py文件打包成exe文件 参考看 https://blog.csdn.net/qq_33878426/article/details/80102229 1.查了许多资料后知道pyinstall对python3.6支持不够好,可以用开发板的pyinstall来解决问题。下载地址:...
  • 使用py2exe生成一个exe文件

    千次阅读 2016-01-27 21:41:08
    在windows中,使用py2...如果想要只生成一个可单独运行的exe文件,需要在setup.py文件中添加bundle_files:1和zipfile=None。 代码如下: - setup.pyfrom distutils.core import setup import py2exeoptions={"py2
  • 本文介绍的是在Pycharm中进行打包,其实Windows下 cmd 下的方法跟这个差不多 下面介绍一下方法: 打开 Pycharm下的 terminal 对话框 方法一:Alt + F12 方法二: ...将 py文件 转换为 exe 在t...
  • 然后把所有相关的py文件都放在一个目录下 在那个目录下执行cmd命令:pyinstaller -F -c target.py 这里target表示的是你的main函数所在的py名称 然后就结束了,那个生成exe在当前目录的一个dist文件夹中。 转载...
  • 但是现在多数电脑都是64位的,可以参考《使用pycharm进行多个版本python编程&>K,py2exe安装》在64位电脑上进行32位程序编译而不影响原来的python程序。 1、使用glade生成界面的XML文件 关于gtk+glade使用你可以...
  • py2exe将py生成exe

    2010-05-31 12:40:00
    py2exe扩展了可以使python脚本转化为windowss可执行程序的Distutils模块。变为windows下可执行文件之后,就不需要依赖python是否安装了。 1. 建立setup.py from distutils.core import setup ...
  • 1、根据网上资料,py2exe仅支持python 2.x版本,python3.x版本需要使用PyInstaller。 2、使用pip安装PyInstaller,安装方法如下: pip.exe文件在python安装目录Scripts下,如下图我的电脑: 使用cmd命令行执行...
  • py2exe生成exe文件后,在注册服务时报的错   F:\pythonwork\botian.voicebox.client-p\src\dist>buildService install Traceback (most recent call last): File "boot_service.py", line 22, in File ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,709
精华内容 11,483
关键字:

py文件如何生成exe