[pyar] Correr un script de python dentro de un programa en C

Angel Java Lopez ajlopez2000 en gmail.com
Jue Feb 6 20:59:19 ART 2014


La gente me ve caminando en circulos, por Parque Chas, en Buenos Aires...
murmurando "por que el system python no anduvo? ... por que el system
python no anduvo? ... " Pero bueno, me dejan tranquilo, si estoy medicado
;-)

Doce horas dando al refresh de gmail...

Alguna novedad al respecto?

Angel "Java" Lopez
@ajlopez



2014-02-06 9:04 GMT-03:00 Angel Java Lopez <ajlopez2000 en gmail.com>:

> Bien, recien probe:
>
> Windows Server 2008
> 32 bits
> Python 2.7 en el path
> Me baje el numpy de
> http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
> corri el instalador
>
> Mi programa python mypython.py
>
> import numpy
> print "hello, world"
>
>
> Mi programa myc.c
>
> #include <stdlib.h>
> #include <stdio.h>
>
> int main(){
>     char py_cmd[200];
>
>     sprintf(py_cmd, "python mypython.py");
>     system(py_cmd);
>
> }
>
> Mi programa python funciona con
>
> python mypython.py
>
> Agrege el DevKit para compilar
>
> gcc myc.c
>
> ejecuto a.exe y anda joya
>
> Tenes info de:
>
> - Que PATH estas usando?
> - Como compilas el programa c?
> - Que pasa si llamas a un programa python que muestre el sys.path,
> diferencias entre llamarlo a mano, y desde c?
> - Tu python realmente esta en /usr/lib/python27 o el cargador de numpy se
> confundio y detecto que cree estar en un linux o similar?
>
> Nos leemos!
>
> Angel "Java" Lopez
> @ajlopez
>
>
>
>
>
> 2014-02-05 9:35 GMT-03:00 Emanuel Benatti <emanuel.benatti en gmail.com>:
>
>> Hola a todos,
>>
>> estoy tratando de correr un script hecho en python dentro del código de
>> un programa hecho en C. Me pareció que lo mas sencillo era utilizar la
>> función system de C, asi que después de un par de intentos di con lo que
>> parecía ser la fórmula correcta. Sin embargo, cuando quiero correr un
>> script que requiere importar numpy obtengo el siguiente mensaje de error:
>>
>> Traceback (most recent call last):
>>   File "pyemb.py", line 1, in <module>
>>     import numpy
>>   File "/usr/lib/python2.7/site-packages/numpy/__init__.py", line 137, in
>> <module>
>>     import add_newdocs
>>   File "/usr/lib/python2.7/site-packages/numpy/add_newdocs.py", line 9,
>> in <module>
>>     from numpy.lib import add_newdoc
>>   File "/usr/lib/python2.7/site-packages/numpy/lib/__init__.py", line 13,
>> in <module>
>>     from polynomial import *
>>   File "/usr/lib/python2.7/site-packages/numpy/lib/polynomial.py", line
>> 17, in <module>
>>     from numpy.linalg import eigvals, lstsq
>>   File "/usr/lib/python2.7/site-packages/numpy/linalg/__init__.py", line
>> 48, in <module>
>>     from linalg import *
>>   File "/usr/lib/python2.7/site-packages/numpy/linalg/linalg.py", line
>> 23, in <module>
>>     from numpy.linalg import lapack_lite
>> ImportError: No such file or directory
>>
>> Esto es lo que pongo en el codigo en c:
>> #include <stdlib.h>
>> #include <stdio.h>
>>
>> int main(){
>>     char py_cmd[200];
>>
>>     sprintf(py_cmd, "python pyemb.py");
>>     system(py_cmd);
>>
>> }
>>
>> siendo pyemb.py:
>> import numpy
>> print "all fine with the world"
>>
>>
>> Lo mas extraño de todo es que si en la linea de comandos corro el comando:
>> python pyemb.py
>>
>> todo resulta como debe ser.
>>
>> Estoy realmente perdido en esto. ¿Qué diferencia puede haber en correr el
>> comando usando system que haciéndolo directamente?
>>
>> Probé tambien importar otros módulos, como subprocess, math, y sys y no
>> tuve ningún problema.
>>
>> Estoy usando python 2.7 en windows XP.
>>
>> En la computadora también hay instalado un python 2.5, aunque cuando
>> escribo "python" en la línea de comandos el intérprete que me sale es el de
>> la versión 2.7, así que no creo que el problema pase por ahí. ¿Estoy en lo
>> correcto?
>>
>> Muchas gracias
>> --
>> Emanuel
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20140206/601681bb/attachment.html>


More information about the pyar mailing list