Merci les gars d'avoir vu mon message.Arrête une boucle infinie tout en invoquant os.system
Tout d'abord, voici mon code:
import os
print("You can create your own message for alarm.")
user_message = input(">> ")
print("\n<< Sample alarm sound >>")
for time in range(0, 3):
os.system('say ' + user_message) # this code makes sound.
print("\nOkay, The alarm has been set.")
"""
##### My problem is here #####
##### THIS IS NOT STOPPED #####
while True:
try:
os.system('say ' + user_message)
except KeyboardInterrupt:
print("Alarm stopped")
exit(0)
"""
Mon problème est que Ctrl + C ne fonctionne pas!
J'ai essayé de changer la position du bloc try
, et de faire la fonction de capture de signal (SIGINT).
Mais cela ne fonctionne pas non plus.
J'ai vu https://stackoverflow.com/a/8335212/5247212, https://stackoverflow.com/a/32923070/5247212, et d'autres plusieurs réponses à propos de ce problème. Je utilise MAC OS (10.12.3) et python 3.5.2.
Avez-vous vu [cette question] (http://stackoverflow.com/questions/18047657/stop-python-in- terminal-sur-mac)? – asongtoruin
Semblait fonctionner correctement pour moi sur Windows 7 et Ubuntu 14.04 (bien que je devais évidemment remplacer la commande "say" spécifique à MACOS par un print.) Le point est que ctrl-C était correctement piégé, l'alarme imprimée s'est arrêtée et est sortie – heroworkshop