[Python-es] Ejecutar programa con valores introducidos

Inigo Aldazabal Mensa inigo_aldazabal en ehu.es
Jue Ene 28 10:20:47 CET 2010


>
> > Tengo un script similar escrito en perl y lo que hace es crear un
> > archivo de texto con las opciones a ingresar y luego ingresa los datos
> > con el simbolo “<”. Algo así como esto.... programaX <input.txt.... y
> > en el archivo input.txt estan todos los numeros que se deben ingresar
> > cuando se ejecute programaX. La verdad que de Perl no tengo ni idea.

Yo creo que podrías utilizar directamente subprocess indicando que el stdin 
es el archivo input.txt, pero no lo he hecho nunca. Cuenta si funciona.

Yo tuve un caso similar con un programa en fortran pero lo que quería 
justamente era cambiar las variables de entrada. Para evitar tener que 
escribir cientos de ficheros con las variables diferentes y como tenía 
acceso al código fuente lo que hice fue modificarlo ligeramente (unas 
pocas líneas, vamos) para pasar el programa principal a una subrutina que 
luego compilaba con f2py y utilizaba, mediante un mini-envoltorio, como un 
módulo mas de python pasándole los valores como si de una función se 
tratase. En C sería  equivalente. La idea la saqué de [1].

Pero en tu caso no creo que sea necesario por lo que cuentas.

Iñigo

[1] http://moo.nac.uci.edu/~hjm/fd_rrt1d/index.html



Más información sobre la lista de distribución Python-es