python暂停命令_命令行-Python中的暂停
命令行-Python中的暫停
我正在Windows任務欄中運行命令行Python腳本,方法是使用指向實際腳本作為參數的Python解釋器的快捷方式。
在處理完腳本之后,解釋器終止并且關閉輸出窗口,這使得無法讀取腳本輸出。
在按下任何鍵之前保持解釋器窗口打開的最直接方法是什么?
在批處理文件中,可以暫停腳本來結束腳本。 我在python中找到的與此最接近的東西是raw_input(),它不是最佳選擇,因為它需要按回車鍵(而不是任何鍵)。
有任何想法嗎?
13個解決方案
53 votes
一種方法是在末尾保留raw_input(),以便腳本在終止之前等待您按Enter。
regan answered 2020-02-17T05:36:40Z
41 votes
嘗試import os-我使用了它,它為我工作。
確保在腳本頂部包含import os。
NGUYEN Q.Yen answered 2020-02-17T05:37:04Z
13 votes
關閉前無需等待輸入,只需像這樣更改命令:
cmd /K python
/K開關將執行以下命令,但與/C329(執行然后關閉)相反,命令解釋器窗口保持打開狀態。
David Grant answered 2020-02-17T05:37:29Z
10 votes
最佳選擇:os.system("some cmd command") <-這實際上會顯示一條消息,說“按任意鍵繼續”,而僅添加raw_input('')則不會打印任何消息,只有光標可用。
與答案無關:
os.system("some cmd command")是一個非常棒的命令,因為該命令可以執行任何批處理文件/ cmd命令。
KingMak answered 2020-02-17T05:37:58Z
7 votes
一種方法是在末尾保留raw_input(),以便腳本在終止之前等待您按Enter鍵。
使用raw_input()代替msvcrt。*的好處是前者是標準Python的一部分(即絕對跨平臺)。 這也意味著,雙擊腳本文件圖標后,腳本窗口將仍然存在,而無需執行
cmd /K python
Boris Gorelik answered 2020-02-17T05:38:23Z
4 votes
在Windows中,您可以使用msvcrt模塊。
msvcrt.kbhit()?????? 如果正在等待讀取按鍵,則返回true。
msvcrt.getch()?????? 讀取按鍵并返回結果字符。 沒有回音?? 到控制臺。 此通話將阻止?? 如果還沒有按鍵?? 可用,但不會等待Enter?? 被按下。
如果您希望它也能在類似Unix的系統上運行,則可以使用termios和fcntl模塊嘗試該解決方案。
dF. answered 2020-02-17T05:38:56Z
2 votes
是的,我知道我要發布到舊主題,但我想對使用input()(3.x及更高版本)。
添加到我的.py腳本的末尾,它的確阻止了控制臺窗口的打開和立即關閉。
至于要按下哪個鍵來關閉它的“問題”,我(我敢肯定還有其他1,000個鍵)只需使用input(“按下Enter即可關閉”)。
感謝您讓我加上2美分的價值:)
。
Thinking Monkey answered 2020-02-17T05:39:34Z
1 votes
在Windows 10上,首先插入:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
奇怪,但是對我有用!(當然,最后還有input())
Radim Akudo answered 2020-02-17T05:39:58Z
1 votes
有一個簡單的方法可以執行此操作,您可以使用鍵盤模塊的wait功能。 例如,您可以執行以下操作:
import keyboard
print("things before the pause")
keyboard.wait("esc") # esc is just an example, you can obviously put every key you want
print("things after the pause")
Vincenzo answered 2020-02-17T05:40:18Z
0 votes
外部WConio模塊可以在此處提供幫助:[http://newcenturycomputers.net/projects/wconio.html]
import WConio
WConio.getch()
Сыч answered 2020-02-17T05:40:38Z
0 votes
import pdb
pdb.debug()
這用于調試腳本。 破也應該有用。
Lakshman Prasad answered 2020-02-17T05:40:58Z
0 votes
讓python以無緩沖的方式從終端讀取單個字符有點棘手,但是這里有一個方法可以做到:
食譜134892:在Windows和Unix(Python)上從stdin讀取類似getch()的無緩沖字符
SingleNegationElimination answered 2020-02-17T05:41:23Z
-1 votes
如果您輸入
input("")
它將等待他們按下任何按鈕,然后它將繼續。 您也可以在引號之間插入文本。
merfman answered 2020-02-17T05:41:47Z
總結
以上是生活随笔為你收集整理的python暂停命令_命令行-Python中的暂停的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 连接eap wifi,在
- 下一篇: Anaconda Python 解决安装