コードの実行に非常に長い時間がかかる状況にあり、常にそれを見つめたくはありませんが、いつ実行されたかを知りたいのです。
(Python)コードの音を「アラーム」にするにはどうすればよいですか?コードの最後に達したときに.wavファイルを再生するように考えていました...
これは実現可能なアイデアですか?もしそうなら、どうすればそれができますか?
コードの実行に非常に長い時間がかかる状況にあり、常にそれを見つめたくはありませんが、いつ実行されたかを知りたいのです。
(Python)コードの音を「アラーム」にするにはどうすればよいですか?コードの最後に達したときに.wavファイルを再生するように考えていました...
これは実現可能なアイデアですか?もしそうなら、どうすればそれができますか?
回答:
import winsound
duration = 1000 # milliseconds
freq = 440 # Hz
winsound.Beep(freq, duration)
ここで、freqは周波数(Hz)、持続時間はミリ秒です。
import os
duration = 1 # seconds
freq = 440 # Hz
os.system('play -nq -t alsa synth {} sine {}'.format(duration, freq))
この例を使用するには、をインストールする必要がありますsox
。
Debian / Ubuntu / Linux Mintでは、これをターミナルで実行します。
sudo apt install sox
Macでは、これをターミナルで実行します(macportsを使用):
sudo port install sox
import os
os.system('say "your program has finished"')
import os
os.system('spd-say "your program has finished"')
speech-dispatcher
Ubuntu(または他のディストリビューションでは対応するパッケージ)にパッケージをインストールする必要があります。
sudo apt install speech-dispatcher
これはWindowsとLinux *の両方で動作するようです(この質問から):
def beep():
print("\a")
beep()
Windowsでは、最後に置くことができます:
import winsound
winsound.Beep(500, 1000)
where 500 is the frequency in Herz
1000 is the duration in miliseconds
Linuxで作業するには、次の操作が必要になる場合があります(QOのコメントから)。
ubuntu音声ディスパッチャを使用できます。
import subprocess
subprocess.call(['speech-dispatcher']) #start speech dispatcher
subprocess.call(['spd-say', '"your process has finished"'])
-w
spd-sayがフレーズを終了するまで待機する引数を追加できます
参照:Pythonサウンド( "ベル")
これは、同じことをしたいときに役に立ちました。
すべてのクレジットはGBCに送られます
やってみました :
import sys
sys.stdout.write('\a')
sys.stdout.flush()
Mac OS 10.5の場合はこれでうまくいきます
実際、私はあなたの最初の試みは少しの修正でもうまくいくと思います:
print('\a')
(文字シーケンスを囲む単一引用符が必要です)。
なぜPythonを使用するのですか?削除してリポジトリにチェックインするのを忘れる場合があります。&&を使用してpythonコマンドを実行し、アラートを実行する別のコマンドを実行するだけです。
python myscript.py &&
notify-send 'Alert' 'Your task is complete' &&
paplay /usr/share/sounds/freedesktop/stereo/suspend-error.oga
または、関数を.bashrcにドロップします。ここではapythonを使用していますが、 'python'をオーバーライドできます
function apython() {
/usr/bin/python $*
notify-send 'Alert' "python $* is complete"
paplay /usr/share/sounds/freedesktop/stereo/suspend-error.oga
}
os.system("paplay sound-alarm.oga")
これは、次のコードで実行できます。
import time
time.sleep(10) #Set the time
for x in range(60):
time.sleep(1)
print('\a')
import subprocess
subprocess.call(['D:\greensoft\TTPlayer\TTPlayer.exe', "E:\stridevampaclip.mp3"])