サブプロセスを開始するPythonスクリプトを書いてから、n秒の間隔のあいだこれを終了したい。 time.sleep(n)を使用すると、プロセスは終了しませんが、このスリープパートを削除すると、os.kill(proc.pid、signal.SIGKILL)を使用してkillされます。誰か助けてくれますか?OS XでPythonとの時間間隔の後にサブプロセスを終了
import time,subprocess,os,signal
timeLeft = 5
while timeLeft > 0:
print('Time left is ' + str(timeLeft))
time.sleep(1)
timeLeft = timeLeft - 1
pass
proc = subprocess.Popen(['open','/Users/06 Green Day - Boulevard Of Broken Dreams.mp3'])
time.sleep(2)
os.kill(proc.pid, signal.SIGKILL)
私はproc.terminate()でも無駄でした。
まずでそれを殺す私が開くようにmp3ファイルでこれをしようとしたとき、それが働いたdidntの。 mp3ファイルはiTunesアプリケーションによってデフォルトで開かれ、終了していないため、mp3は再生を続けました。 第2に、一定時間後に開始して一定時間後に終了するアラームを作成しようとしていたため、サブプロセスを開始する位置は変更されません。 – Prashant
@Prashantは、私の例のようにファイルを手動で選択し、正しくシャットダウンするプログラムを選択します。 – MadisonCooper