socket python3 getsockname python scripting ipc

python3 - socket python 3



¿Cómo puedo lanzar una instancia de una aplicación usando Python? (6)

Estoy creando un script de Python en el que realiza un conjunto de tareas y una de esas tareas es iniciar y abrir una instancia de Excel. ¿Cuál es la forma ideal de lograr eso en mi script?


Me gusta popen2 por la capacidad de monitorear el proceso.

excelProcess = popen2.Popen4("start excel %s" % (excelFile)) status = excelProcess.wait()

http://www.python.org/doc/2.5.2/lib/module-popen2.html

EDITAR : tenga en cuenta que llamar a wait () se bloqueará hasta que vuelva el proceso. Dependiendo de su secuencia de comandos, esta puede no ser su conducta deseada.


o

os.system("start excel.exe <path/to/file>")

(suponiendo que está en la ruta, y estás en Windows)

y también en Windows, simplemente start <filename> también, si ya tiene una extensión asociada (como sería xls)


os.system ("archivo abierto.xls")


El módulo de subproceso tiene la intención de reemplazar varios otros módulos y funciones anteriores, tales como:

  • os.system
  • os.spawn *
  • os.popen *
  • popen2. *
  • comandos. *

.

import subprocess process_one = subprocess.Popen([''gqview'', ''/home/toto/my_images'']) print process_one.pid


Como otros han declarado, sugeriría os.system. En caso de que alguien esté buscando una solución compatible con Mac, aquí hay un ejemplo:

import os os.system("open /Applications/Safari.app")


Si bien las respuestas de Popen son razonables para el caso general, recomendaría win32api para este caso específico, si desea hacer algo útil con él:

Es algo parecido a esto:

from win32com.client import Dispatch xl = Dispatch(''Excel.Application'') wb = xl.Workbooks.Open(''C://Documents and Settings//GradeBook.xls'') xl.Visible = True # optional: if you want to see the spreadsheet

Tomado de una publicación de la lista de correo pero hay muchos ejemplos alrededor.