首页 > 编程语言 >Python程序打包成exe、隐藏运行窗口

Python程序打包成exe、隐藏运行窗口

时间:2024-03-27 10:46:24浏览次数:16  
标签:exe 窗口 Python py 命令行 pyinstaller 隐藏 打包

Python隐藏运行窗口的实现方法

1. 流程图

st=>start: 开始
op1=>operation: 创建Python脚本
op2=>operation: 添加代码
op3=>operation: 保存脚本
op4=>operation: 编译脚本
op5=>operation: 生成可执行文件
op6=>operation: 隐藏运行窗口
e=>end: 完成

st->op1->op2->op3->op4->op5->op6->e
 

2. 实现步骤

下面将详细介绍每个步骤需要做什么,以及需要使用的代码和注释。

步骤1:创建Python脚本

首先,你需要创建一个Python脚本文件,可以使用任何文本编辑器来创建。将文件保存为.py扩展名,例如example.py

步骤2:添加代码

在脚本中添加你想要运行的Python代码。在本例中,我们以一个简单的例子来说明隐藏运行窗口的方法。

import os
os.system("pause")
 

代码解释:

  • import os:导入os模块,用于执行操作系统命令。
  • os.system("pause"):执行命令pause,使程序暂停,等待用户按下任意键继续。

步骤3:保存脚本

将修改后的脚本保存。

步骤4:编译脚本

现在,我们需要将Python脚本编译为可执行文件。我们可以使用pyinstaller库来实现这一步骤。以下是命令行中的示例代码:

pip install pyinstaller
pyinstaller --onefile example.py
 

代码解释:

  • pip install pyinstaller:使用pip命令安装pyinstaller库。
  • pyinstaller --onefile example.py:将example.py脚本编译为单个可执行文件。

步骤5:生成可执行文件

完成编译后,pyinstaller将在脚本目录下生成一个dist文件夹。在该文件夹中,你将找到一个与脚本名称相同的文件,这就是你的可执行文件。

步骤6:隐藏运行窗口

现在,你可以使用一些特殊的技巧来隐藏运行窗口。以下是一种常用的方法:使用pyw作为可执行文件的扩展名。将可执行文件的扩展名从.exe修改为.pyw,即可隐藏运行窗口。

请注意,这种方法只适用于Windows系统。

完成以上步骤后,你的Python脚本将以隐藏运行窗口的方式执行。

总结

本文详细介绍了如何实现Python隐藏运行窗口的方法。首先,你需要创建一个Python脚本并添加你想要运行的代码。然后,使用pyinstaller库将脚本编译为可执行文件。最后,将可执行文件的扩展名修改为.pyw,即可隐藏运行窗口。希望这篇文章对正在学习Python的小白有所帮助。

 

出处:https://blog.51cto.com/u_16213348/7038582

=======================================================================================

Python 如何隐藏命令行窗口?

若我们使用 Python 编写 GUI 程序,我们可能会遇到需要隐藏命令行窗口的情况。但是,在 Windows 上,当我们启动 .py 文件时,命令行窗口会默认打开。要隐藏这个窗口,我们需要进行一些额外的操作。接下来,我们将一步步学习如何隐藏命令行窗口。

为什么需要隐藏命令行窗口?

在 Windows 操作系统上,命令行窗口会默认弹出,因为执行一个 .py 文件即意味着启动了 Python 解释器。但是,当我们编写的程序是基于 GUI 的时候,这个命令行窗口会非常不方便。它会分散用户的注意力,也会让程序界面看起来不够专业。因此,隐藏命令行窗口是非常有必要的。

如何隐藏命令行窗口?

方法一:使用Pythonw.exe

我们可以使用Pythonw.exe来运行Python GUI程序而不会打开cmd(命令行)窗口。Pythonw.exe在后台静默运行Python,并且不会打开命令提示符或 DOS 窗口,从而实现了隐藏命令行窗口的目的。Pythonw.exe 位于 Python 安装目录的“/windows”目录下。因此,在执行文件时,可以使用以下命令:

import subprocess
subprocess.Popen(["pythonw", "gui_program.py"])

这将使用Pythonw.exe启动gui_program.py。

方法二:使用 Windows 自带的隐藏屏幕功能

我们可以使用Windows自带的隐藏屏幕功能,也可以隐藏Python程序的命令行窗口。我们可以使用以下代码:

import win32console
import win32gui
win = win32console.GetConsoleWindow()
win32gui.ShowWindow(win,0)

在第一行中,我们使用 win32console 模块获取到当前的控制台窗口句柄。在第二行中,通过 ShowWindow() 函数来将窗口隐藏。

方法三:使用PyInstaller

当我们将 Python 程序打包成 Executable 程序后,该程序将自动隐藏命令行窗口。要使用 PyInstaller,我们可以使用以下命令:

pip install pyinstaller

之后,我们可以使用以下命令将 Python 程序打包成 Executable 程序:

pyinstaller -w -F gui_program.py

结论

无论您是编写 GUI 还是 CLI 程序,隐藏命令行窗口都是非常有用的。在 Windows 上,命令行窗口总会默认显示,这会干扰 GUI 程序的用户体验。通过本文讨论的方法,我们可以隐藏命令行窗口并使用户界面更专业。请根据您的需求选择适合你的方法。

最后的最后

本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。

对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。

标签:exe,窗口,Python,py,命令行,pyinstaller,隐藏,打包
From: https://www.cnblogs.com/mq0036/p/18098391

相关文章

  • 没有Python基础,如何学习用Python写机器学习
    前言我是一个完全没用过python的人,所以,想写机器学习,就得从语法入手。首先上W3cSchool去学习基础语法。基础语法都差不多,重点看一下函数,模块,面向对象。函数的写法稍有不同,格式上类似yml的写法;模块会介绍import的相关信息;面向对象会介绍类的相关信息。参考网站:https://www.w3c......
  • Python接口自动化测试的学习笔记9——logging日志
    1、引言在进行Python接口自动化测试时,日志记录是一项至关重要的任务,它可以帮助开发者追踪测试过程中的详细信息,包括请求与响应数据、错误消息、调试信息等,从而有效地定位问题并提高测试效率。下面,我们将探讨如何在Python接口自动化测试项目中构建和配置一个强大的日志记录系统......
  • python的应用 | 提取指定文件夹下所有PDF文件的页数
    需求背景:由于要打印几十页pdf,跟打印店对接的时候,为了防止被坑,提前了解一下,所有文档一共有多少页,于是想到了用python来提取pdf文件的页数完整代码:importosfromPyPDF2importPdfReaderdefget_pdf_page_count(folder_path):#初始化总页数变量total_pages=0......
  • Python-VBA编程500例-020-02(入门级)
    第k个组合(ThekthCombination)的问题在实际应用中具有广泛的用途,它涉及从n个不同元素中选出k个元素的所有可能组合。这种组合的概念在许多领域都有重要的应用,常见的一些具体应用有:1、彩票与赌博:在某些彩票或赌博游戏中,参与者需要选择特定数量的号码或符号。这些号码或符号的......
  • [Python]细节与使用经验
    【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)https://www.cnblogs.com/cnb-yuchen/p/18031983出自【进步*于辰的博客】纯文字阐述,内容比较干。并且,由于考虑到时间长了恐有所遗漏,便即兴记录,并没有对内容进行筛选、排序。因此,大家在阅读时可以直接Ctrl+F进行......
  • 肖sir__python之模块7.1
    ython之模块一、模块的介绍(1)python模块,是一个python文件,以一个.py文件,包含了python对象定义和pyhton语句(2)python对象定义和python语句(3)模块让你能够有逻辑地组织你的python代码段。(4)把相关的代码分配到一个模块里能让你的代码更好用,更易懂(5)模块能定义函数,类和变量,模块里也能包含可......
  • python 常用包
    python对于从git下载的内容,进入包内使用以下命令: pythonsetup.pybuildinstall 对于whl包,可省去后面的whl直接安装,假如有whl包是test123.whlpipinstalltest123 pip: 是Python包管理工具,python的其它包安装一般都是通过pip操作。python3.4+自带有此包。下载......
  • 市场数据和金融数据API的获取步骤,支持Python、Java、Go等接入方式,轻松实现量化数据交
    今天我想分享一个非常实用的技术内容,即如何通过接口API来实现订阅并接入实时行情数据源的报价信息。这个技术可以帮助你获取最新的市场数据,为你的应用程序或交易策略提供及时的信息支持。接入实时行情数据源可以让你了解市场动态并快速作出决策,非常有助于优化你的交易策略和投资决......
  • VS2022软件打包 生成和事后事件处理
    VS2022软件打包生成和事后事件处理 示例目标:将编译后的文件拷贝到新的文件,并重命名方便软件打包 生成前:删除目标目录:rd/s/q"$(SolutionDir)..\setup\$(ConfigurationName)\"生成后-拷贝重命名:copy"$(TargetPath)"$(TargetDir)JCZX-2024.exe"copy"$(TargetPat......
  • 监控工具-jvisualvm.exe-入门,监控tomcat7的jmx、jstatd
    1、添加JMX1.1、catalina-jmx-remote.jar 放在Tomcat的 lib 目录下catalina-jmx-remote.jar 的确切位置可能因Tomcat版本和发行版而异,但通常它应该被放置在Tomcat的 lib 目录下 1.2、catalina.sh设置JVM参数对于Linux/Unix,编辑 catalina.sh 文件......