sábado, 17 de febrero de 2018

Receta Python No. 12-7: Crear un Subproceso

1. Problema

Crear un subproceso para la ejecución de una tarea externa (e.g., proceso de línea de comandos).

2. Solución

El módulo subprocess (librería estándar de Python) permite la creación de subprocesos. Esta es una nueva solución que reemplaza a os.system y os.spawn. En concreto el módulo subprocess contiene el método run(); el cual es capaz de ejecutar subprocesos (Bernard, 2016).

3. Código Python

Archivo Python crear-subproceso.py [enlace alternativo]:

Prueba de ejecución:

b'total 825\n-rw-r--r-- 1 johno 197609   739 Jun  3  2016 CatalogoProductos.xml\n-rw-r--r-- 1 johno 197609  6015 Jan 13 12:52 Python - R1.03 - B\xc3\xbasqueda dentro de una Cadena de Caracteres .xml\n-rw-r--r-- 1 johno 197609  4481 Jan 13 15:20 Python - R1.04 - Obtener una Sub-cadena de Caracteres.xml\n-rw-r--r-- 1 johno 197609  5593 Jan 13 21:40 Python - R1.05 - Reemplazar Coincidencias de Texto.xml\n-rw-r--r-- 1 johno 197609  3303 Jan 14 09:03 Python - R1.06 - Invertir una Cadena de Caracteres (String).xml\n-rw-r--r-- 1 johno 197609  4120 Jan 14 12:18 Python - R1.07 - Remover el Espacio en Blanco de una Cadena de Caracteres (String).xml\n-rw-r--r-- 1 johno 197609  3488 Jan 14 20:26 Python - R1.08 - Cambiar la Capitalizaci\xc3\xb3n de una Cadena de Caracteres (String).xml\n-rw-r--r-- 1 [...]


Los [...] indican la exposición de una parte del resultado. Puede variar dependiendo del directorio donde se ejecute el script Python.


La línea 3 especifica que se ha de ejecutar el comando ls con el argumento -l para mostrar el contenido de un directorio con detalles de los diretorios y archivos.

4. Literatura & Enlaces

Bernard J. (2016). Python Recipes Handbook: A Problem-Solution Approach. Canada: Apress.

O

No hay comentarios:

Publicar un comentario

Envíe sus comentarios, dudas, sugerencias, críticas. Gracias.