Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: e en 21 Abril 2018, 21:37 pm



Título: [PYTHON]Pequeña duda
Publicado por: e en 21 Abril 2018, 21:37 pm
Hola,tengo un script de python,el cual debe ejecutar dos scripts simultáneamente.
Lo que hace es ejecutarlos por orden,¿cómo se haría para ejecutarlos los dos sin más?
El script erróneo es:
Código
  1. import os
  2. os.system('music.py')
  3. os.system('main.py')
  4.  
Cuando acaba la canción es cuando ejecuta main.py,y yo quiero que ejecute los dos y se cierre.
fox459


Título: Re: [PYTHON]Pequeña duda
Publicado por: engel lex en 21 Abril 2018, 23:49 pm
esto se llaman funciones "sincronas" o "bloqueantes" (blocking)

tienes que buscar funciones asincronas o no bloqueantes

aquí un ejemplo

Código
  1. import subprocess # esta librería para la funcion no bloqueante
  2. import time
  3.  
  4. subprocess.Popen(['sleep', '5']) #cada argumento debe ir como un elemento en un array
  5.  
  6. subprocess.Popen(['music.py'])
  7.  
  8.  


Título: Re: [PYTHON]Pequeña duda
Publicado por: e en 22 Abril 2018, 08:35 am
Me sale lo sisguiente:
WindowsError: [Error 193] %1 no es una aplicaci¾n Win32 vßlida.
¿Qué debería hacer con esto?


Título: Re: [PYTHON]Pequeña duda
Publicado por: Sentex en 22 Abril 2018, 11:40 am
Prueba con esto:
Código
  1. import os
  2. os.popen("main.py")
  3.  


Título: Re: [PYTHON]Pequeña duda
Publicado por: e en 22 Abril 2018, 20:12 pm
Muchas gracias,me ha servido muy bien.
fox459


Título: Re: [PYTHON]Pequeña duda
Publicado por: Sentex en 23 Abril 2018, 14:05 pm
Denada, siempre me gusta ayudar y porfavor mas dudas que me gusta responder ;)