在Windows上执行脚本时隐藏控制台

时间:2016-03-29 20:14:26

标签: python windows console

如何在执行脚本时隐藏控制台?我想创建一个单独的函数(可能通过应用os / sys中的一些方法,我不知道),所以我不需要一些解决方案,比如从{{更改脚本扩展名1}}到.py

3 个答案:

答案 0 :(得分:1)

我在Windows 7上完成它的方法是使用pythonw.exe解释器创建一个快捷方式(或链接),该解释器没有控制台,而不是默认的python.exe

只需按照以下3个步骤操作:

  1. 首先为脚本创建一个普通的快捷方式。一种方法是将资源管理器窗口中显示的脚本文件的图标拖到您想要快捷方式的位置(如桌面),并在释放鼠标按钮时按住 Alt
  2. 右键单击刚刚创建的快捷方式,然后从弹出的菜单中选择Properties
  3. 将显示快捷方式的属性对话框。在其中插入C:\python27\pythonw.exe和脚本文件路径前的空格。 如果脚本的路径中有任何空格,则现在必须用双引号括起来。如果您使用的是其他版本的Python,则还需要更改{{1}相应的。

    即。需要更改Python27的目标

    D:\path with spaces in it to\myscript.py

    如果您愿意,也可以在此处更改快捷方式图标。

  4. 以下是一个例子:

    screenshot of filled in shortcut properties dialog

答案 1 :(得分:0)

你可以在后台运行一个python程序,添加一个&最后:

python myfile.py &

如果您希望能够关闭控制台并让进程在后台运行,您可能需要查看nohup:

http://linux.die.net/man/1/nohup

答案 2 :(得分:0)

如果您想在执行期间隐藏窗口(并且您的脚本仅适用于Windows),那么您可能会ctypes

使用this回答你可以接受输入然后隐藏它:

import ctypes

a = input('Input value here:')


kernel32 = ctypes.WinDLL('kernel32')

user32 = ctypes.WinDLL('user32')

SW_HIDE = 0

hWnd = kernel32.GetConsoleWindow()
user32.ShowWindow(hWnd, SW_HIDE)

# Do stuff here

这是在C ShowWindow()上运行的。您可以获得更多(深入)信息from the Windows's own documentation