pyinstaller封装exe的操作
作者:qq_24499417 发布时间:2021-02-12 03:21:16
我使用的是anaconda。我推荐大家使用anaconda,对环境依赖关系处理的比较好。不用浪费太多时间在安装模块上。
首先安装pyinstaller.命令:
pip install pyinstaller
需要封装的代码为一个api消息框。代码如下,保存的是pyw文件,放在桌面上。
# -*- coding: utf-8 -*-
"""
Created on Sun Jul 1 21:58:06 2018
@author: FanXiaoLei
"""
import win32api
win32api.MessageBox(0,'打倒老残','友情提示')
打开windows cmd命令提示符,进入pyinstaller安装目录的Scripts文件夹下。
我用的是anaconda,路径为D:\ProgramData\Scripts。
封装命令:pyinstaller -F -w 要封装的文件完整路径。
如下图所示:
按enter键以后封装自动执行。
看下图,我们可以看到exe保存在了Scripts目录下的dist文件夹下。
最后一句completed successfully表明创建exe成功。
运行exe后直接会弹出消息框,但不会有黑色的控制台窗口显示。
怎么样?是不是很简单呢?我使用的是64位的anaconda。
封装的是64位的exe.如果你想创建通用的,需要使用32位anaconda,这样创建的32位的exe,可以正常运行于32/64位平台。
补充:pyinstaller打包exe文件出现命令窗口一闪而过
用pyinstaller打包的exe文件打开时,命令窗口一闪而过,并且未出现GUI界面,也看不到错误信息,然后去网上搜相关的信息,最多的两种说法:
1.添加raw_input()或者os.system(“pause”)等待信息 ,但是添加后依然是命令窗口一闪而过
2.在命令窗口打开exe,网上有两种打开exe的方法
start Path\Project.exe
start加exe文件的绝对路径,但是效果和双击exe文件一样,依然是一闪而过
cd path >>Project.exe
这是先跳转到exe所在的文件夹里,然后输入文件名带不带.exe都行
结果第二种报错了,于是一切就从这个美丽的错误开始了
但是里面提示了正确的运行方式,输入.\Project 带不带.exe都行,然后又运行了一次,终于看到了错误信息,顿时有种泪流满面的感觉啊
从错误信息也能看出为什么加入raw_input()或者os.system(“pause”)等待信息没有用,因为根本就没走主程序提示没有no module named requests 但是明明有,并且在pycharm中导入了啊,为什么会提示没有呢?
实在是想不明白,于是去网上查各种资料,终于查到了原因,原来是和编写的工具有关,pacharm 导入的模块并没有安装到电脑的python中模块中去,这就导致了,在pacharm中能正常运行,在命令窗口里运行python文件时却提示错误。
搞明白原因后赶紧去试验了一下,用pip安装了requests后再打包,果然可以了。
在这次查找问题,解决问题的过程中,我总结了一下,这和我一上来就使用pycharm有关,pycharm在编程时确实好用,自动化程度确实高,但是在基础还未学好的情况下我建议还是先使用IDLE吧,我之前就跳过了IDLE直接使用的pycharm,我现在也处在自学阶段,就换回了IDLE,如果python有模块没导入,它会直接提示你,你也只能pip去安装或手动安装,这样打包的时候就不会有缺少模块的问题,也希望大家在以后的学习中碰到问题能及时解决问题,不要像我这样一个简单的问题搞了一天,也许大佬也遇到这个问题,可能感觉问题太简单了,只能我这种小白来给大家当搬运工了。
来源:https://blog.csdn.net/qq_24499417/article/details/82866195
猜你喜欢
- 在用Python开发时(Windows环境),会碰到需要安装某个版本的第三方库,为了以后查找、安装方便,总结如下:windows版的各种Py
- PHP asXML()函数实例格式化 XML(版本 1.0)中的 SimpleXML 对象的数据:<?php $note=<&l
- 本文在上文的基础上重新实现支持多线程的服务器。以下为TCP客户端的程序代码:#!/usr/bin/env python3import sys
- 目录简介创建线程构造器方式继承方式守护线程线程本地数据定时器简介Python 通过 _thread 和 threading 模块提供了对多线
- 进程进程是程序的一次动态执行过程,它对应了从代码加载、执行到执行完毕的一个完整过程。进程是系统进行资源分配和调度的一个独立单位。进程是由代码
- 本文实例讲述了PHP动态生成指定大小随机图片的方法。分享给大家供大家参考,具体如下:<?php$image_width = 100;$
- label转onehot的很多,但是onehot转label的有点难找,所以就只能自己实现以下,用的topk函数,不知道有没有更好的实现on
- 我们都知道,Numpy 是 Python 环境下的扩展程序库,支持大量的维度数组和矩阵运算;Pandas 也是 Python 环境下的数据操
- 这个验证类的完成有很长时间了,一直没有分享给大家使用了这么长时间之后感觉挺顺手,用于一些不需要特殊效果的表单验证个人认为已经足够了,还是挺好
- 批量修改: EXEC sp_MSforeachtable 'exec sp_changeob
- 在我们的日常生活工作中,经常会遇到需要上传日志的场景,比如多台机器运行同一个程序,并且需要记录每台机器程序产生的日志,根据相关关键词告警,或
- 使用“发送测试电子邮件”对话框来测试使用特定配置文件发送邮件的能力。过程发送测试电子邮件1.使用对象
- ExtJS可以用来开发RIA也即富客户端的AJAX应用,是一个用javascript写 的,主要用于创建前端用户界面,是一个与后台技术无关的
- asp采集常用的几个FUCTION如:利用流保存文件,利用fso检测文件是否存在,利用fso检测文件夹是否存在,保存文件,取得远程数据等1.
- 写文的原因学习 Python 的过程中,经常会使用 pip 命令去安装第三方模块,但细细琢磨下来,我真的掌握这款工具了吗?本文为你全面揭示一
- 日志Yii提供了一个高度自定义化和高扩展性的日志框架。根据使用场景的不同,你可以很容易的对各种消息就行记录、过滤、合并,比如说文本文件,数据
- python PIL 将数组值转成图片安装 PIL 包pip install pillow将二维数据转换成单通道图片from PIL imp
- 女友让我给她论文的图片上加上字母序号,本来觉得是个很简单的事情,但那个白底黑字的圆圈序号却难住了我, 试了几个常用的软件,都不行。后来用 P
- 前言:近我使用 Go 语言完成了一个正式的 Web 应用,有一些方面的问题在使用 Go 开发 Web 应用过程中比较重要。过去,我将 Web
- 打算学习 Python 来做数据分析的你,是不是在开始时就遇到各种麻烦呢?到底该装 Python2 呢还是 Python3 ?为什么安装 P