¿Cómo ejecuto un programa o invoco un comando del sistema?

Usar módulo subprocess en la biblioteca predeterminada:

import subprocess
subprocess.run(["ls", "-l"])

La ventaja de subprocess.run en os.system es que es más flexible (puedes revisar stdout, stderrese código de estado «correcto»mejor manejo de errores etc …).

Aunque la documentación para os.system recomienda usar subprocess en cambio:

Ese subprocess el módulo brinda oportunidades más poderosas para crear nuevos procesos y recuperar sus resultados; usar este módulo es preferible a usar esta característica. Míralo Reemplazo de funciones anteriores con el módulo de subproceso Sección I subprocess documentación para algunas recetas útiles.

En Python 3.4 y versiones anteriores, use subprocess.call en vez de .run:

subprocess.call(["ls", "-l"])

Temas relacionados:

¿ Te fue útil este artículo ?
⬇️ Ayudame compartiendo para poder llegar a más personas.⬇️

4 comentarios en «¿Cómo ejecuto un programa o invoco un comando del sistema?»

  1. ¡No entiendo por qué es tan complicado! Deberían simplificar los procesos.

  2. ¡No entiendo por qué complicar las cosas! ¡Hay que simplificar para todos!

    • ¡A veces, lo simple no siempre es la mejor opción! La complejidad puede llevar a soluciones más efectivas y profundas. No le tengas miedo a desafiar lo obvio, a veces la simplicidad es solo una fachada. ¡Vamos más allá!

  3. ¿Por qué no mencionaron las opciones para usuarios avanzados en ese artículo? 🤔

Los comentarios están cerrados.