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]:
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 [...]
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.