赞
踩
- Unless run from an existing console window, `python.exe` **opens a new console window**.
- **Standard streams** `sys.stdin`, `sys.stdout` and `sys.stderr` are **connected to the console window**.
- Execution is **synchronous** when launched from a `cmd.exe` or PowerShell console window: See [eryksun](https://stackoverflow.com/users/205580/eryksun)'s 1st comment below.- If a new console window was created, it stays open until the script terminates.
- When invoked from an existing console window, the prompt is blocked until the script terminates.pythonw.exe是GUI应用程序用于启动GUI/无用户界面的所有脚本。...- **NO console window** is opened.
- Execution is **asynchronous**:
- When invoked from a console window, the script is merely _launched_ and the prompt returns right away, whether the script is still running or not.- **Standard streams** `sys.stdin`, `sys.stdout` and `sys.stderr` are **NOT available**.
- **Caution**: **Unless you take extra steps**, this has **potentially unexpected side effects**:
- **Unhandled exceptions** cause the script to **abort** _**silently**_.
- **In Python 2.x, simply trying to use** **`print()`** **can cause that to happen** (in 3.x, `print()` simply has no effect).
- To **prevent that from within your script**, and to learn more, see [this answer](https://stackoverflow.com/a/30310192/45375) of mine.
- **Ad-hoc**, you can use **output redirection**:Thanks, @handle.pythonw.exe yourScript.pyw 1>stdout.txt 2>stderr.txt(来自PowerShell:cmd /c pythonw.exe yourScript.pyw 1>stdout.txt 2>stderr.txt)捕获stdout和stderr输出档案...
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。