Estoy en una situación en la que mi código tarda mucho en ejecutarse y no quiero mirarlo todo el tiempo, pero quiero saber cuándo está listo.
¿Cómo puedo hacer que el código (Python) suene como una “alarma” cuando termine? Estaba contemplando hacer que reproduzca un archivo .wav cuando llegue al final del código…
¿Es esto siquiera una idea factible? Si es así, ¿cómo podría hacerlo?
¿Qué sistema operativo estás usando?
– Thomas Fenzl
15 mayo 2013 a las 19:08
Ubuntu 12.04 y el código está en python.
– tigre
15 mayo 2013 a las 19:09
También me interesaría saber cómo hacer esto en Windows.
En Debian/Ubuntu/Linux Mint, ejecute esto en su terminal:
sudo apt install sox
En Mac, ejecute esto en su terminal (usando macports):
sudo port install sox
Discurso en Mac
import os
os.system('say "your program has finished"')
Discurso en Linux
import os
os.system('spd-say "your program has finished"')
Necesitas instalar el speech-dispatcher paquete en Ubuntu (o el paquete correspondiente en otras distribuciones):
sudo apt install speech-dispatcher
cierto Tienes que descargarlo, te daré el enlace, déjame encontrarlo… Acabo de publicar otro para macs que realmente te hablará, para que te diga cuándo está listo
– Ryan Saxe
15 mayo 2013 a las 19:30
¡Gracias! ¿sabes si linux tiene uno que también te hable?
– tigre
15 mayo 2013 a las 22:39
el mío dice que say no se encuentra, aunque he instalado sox y play funciona. pero he encontrado una alternativa. import os os.system(‘habla “su programa ha terminado”‘)
– tigre
17 de mayo de 2013 a las 11:04
@CharlieParker, si observa la respuesta completa, la primera opción es solo para usuarios de Windows. Los otros indican cómo en otros entornos, que incluye OSX
– Ryan Saxe
7 julio 2016 a las 22:29
¡HASTA que pueda hacer que mi computadora hable usando el paquete os! ¡¡Tan genial!!
Esto no parece funcionar a través de ipython/Jupyter
– Kyle Barron
15 de noviembre de 2019 a las 22:57
no funciona en el código VS ni en los portátiles Jupyter en win10
– Miguel Tomás
11 de mayo de 2021 a las 12:19
¡No funciona en mi computadora (Linux Mint 20)!
– sangorys
3 ene a las 17:14
Saullo GP Castro
Este parece funcionar tanto en Windows como en Linux* (de esta pregunta):
def beep():
print("\a")
beep()
En Windows, puede poner al final:
import winsound
winsound.Beep(500, 1000)
where 500 is the frequency in Herz
1000 is the duration in miliseconds
Para trabajar en Linux, es posible que deba hacer lo siguiente (del comentario de QO):
en una terminal, escriba ‘cd /etc/modprobe.d’ y luego ‘gksudo gedit blacklist.conf’
comente la línea que dice ‘blacklist pcspkr’, luego reinicie
compruebe también que las preferencias de la terminal tienen marcada la ‘Timbre de la terminal’.
¡Gracias! solo para agregar, es posible que deba activar el sonido de la campana de la terminal en ubuntu gnome para que funcione.
– tigre
15 mayo 2013 a las 19:34
@mtigger ¿Podría explicar cómo hacerlo, para que podamos actualizar la respuesta … (o puede actualizar)
– Saullo GP Castro
15 mayo 2013 a las 19:45
en una terminal, escriba ‘cd /etc/modprobe.d’ y luego ‘gksudo gedit blacklist.conf’. descomente la línea que dice ‘blacklist pcspkr’, luego reinicie. compruebe también que las preferencias de la terminal tienen marcada la ‘Timbre de la terminal’.
– tigre
15 mayo 2013 a las 19:59
¿Cómo verificar “que las preferencias de la terminal tienen el ‘Terminal Bell’ marcado” en ubuntu 13?
– usuario2384994
6 de diciembre de 2013 a las 0:37
“\a” funcionó para mí en el subsistema Ubuntu para Windows, ¡gracias!
– Ryan
3 de julio de 2017 a las 3:25
El despachador de voz de ubuntu se puede utilizar:
import subprocess
subprocess.call(['speech-dispatcher']) #start speech dispatcher
subprocess.call(['spd-say', '"your process has finished"'])
Supongo que desea el timbre estándar del sistema y no quiere preocuparse por las frecuencias y duraciones, etc., solo desea el timbre estándar de Windows.
import winsound
winsound.MessageBeep()
La respuesta de Kuchi no funcionó para mí en OS X Yosemite (10.10.1). encontré el afplay dominio (aquí), al que puede simplemente llamar desde Python. Esto funciona independientemente de si la campana audible de la Terminal está habilitada y sin una biblioteca de terceros.
import os
os.system('afplay /System/Library/Sounds/Sosumi.aiff')
¿Por qué usar python en absoluto? Es posible que olvide eliminarlo y registrarlo en un repositorio. Simplemente ejecute su comando python con && y otro comando para ejecutar la alerta.
Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos.
Configurar y más información
¿Qué sistema operativo estás usando?
– Thomas Fenzl
15 mayo 2013 a las 19:08
Ubuntu 12.04 y el código está en python.
– tigre
15 mayo 2013 a las 19:09
También me interesaría saber cómo hacer esto en Windows.
– Jared Nielsen
15 mayo 2013 a las 19:10
stackoverflow.com/questions/307305/reproducir-un-sonido-con-python
– Thomas Fenzl
15 mayo 2013 a las 19:11
Posible duplicado de Reproducir audio con Python Ubuntu bash: askubuntu.com/questions/277215/…
– Ciro Santilli Путлер Капут 六四事
28 de julio de 2016 a las 11:53