[(J)Python] import depuis l'interpréteur

import depuis l'interpréteur [(J)Python] - Python - Programmation

Marsh Posté le 18-03-2004 à 10:21:33    

bonjour,
 
c'est sans doute rien, mais je n'arrive pas à importer mes modules depuis l'interpréteur Jython ...
 
>>>import sys
#ca ca marche dq meme  :D  
 
>>>import monModule
#marche que qd c une classe, j'ai l'impression
 
j'ai vérifié le pythonpath, pas de souci de ce côté là normalement
c'est pourtant possible d'importer un module pas "objet", non ?
 
merci d'avance
 
pi3r

Reply

Marsh Posté le 18-03-2004 à 10:21:33   

Reply

Marsh Posté le 18-03-2004 à 12:13:43    

l'import n'a rien à voir avec les classes. mais un print dans ton .py, fais un import et regarde
 
 
ça veut dire quoi "ça marche pas" ?

Reply

Marsh Posté le 19-03-2004 à 10:17:18    

Re-bonjour a tous,
 
je vais être plus précis :
 
J'ai intégré un interpréteur Jython dans notre appli java (basée sur la plate forme NetBeans) grâce à l'API Jython :
http://www.jython.org/docs/javadoc/index.html
 
J'utilise donc la classe PythonInterpreter pour instancier un interpréteur et l'intégrer à l'appli donc l'environnement ne doit pas être tout a fait le même que lorsque l'on lance l'interpréteur à la main (en commande DOS par ex).  
 
effectivement, on se rend rapidement compte de certains problèmes : je test/import/script des choses dans l'interpréteur 'standard' qui ne fonctionnent pas forcément dans mon interpréteur 'embarqué', par exemple :
 

Code :
  1. C:\jython-2.1\jython
  2. >>> import urllib
  3. >>>print urllib.urlopen('http://tycho.usno.navy.mil/cgi-bin/timer.pl').read()


 
#ce qui affiche :
<TITLE>What time is it?</TITLE>
<H2> US Naval Observatory Master Clock Time</H2> <H3>
<BR>Mar. 19, 08:56:01 UTC
<BR>Mar. 19, 03:56:01 AM EST
<BR>Mar. 19, 02:56:01 AM CST
<BR>Mar. 19, 01:56:01 AM MST
<BR>Mar. 19, 12:56:01 AM PST
<BR>Mar. 18, 11:56:01 PM YST
<BR>Mar. 18, 10:56:01 PM AST
</H3></B><P><A HREF="http://tycho.usno.navy.mil">Time Service Department, US Nav
 
 
La même chose dans mon interpréteur 'embarqué' :
 

Code :
  1. >>>import urllib
  2. Traceback (innermost last):
  3.   File "<string>", line 1, in ?
  4.   File "c:\jython-2.1\Lib\urllib.py", line 44, in ?
  5.   File "c:\jython-2.1\Lib\javaos.py", line 32, in ?
  6.   File "c:\jython-2.1\Lib\re.py", line 7, in ?
  7.   File "c:\jython-2.1\Lib\sre.py", line 17, in ?
  8.   File "c:\jython-2.1\Lib\sre_compile.py", line 15, in ?
  9. AttributeError: class 'org.python.modules._sre' has no attribute 'MAGIC'


 
Et puis, bizarrerie, si j'insiste :
 

Code :
  1. >>>import urllib
  2. >>>
  3. #il ne me dit plus rien ...
  4. >>>print urllib.urlopen('http://tycho.usno.navy.mil/cgi-bin/timer.pl').read()
  5. Traceback (innermost last):
  6.   File "<string>", line 1, in ?
  7. AttributeError: module 'urllib' has no attribute 'urlopen'
  8. #mais c'est pas pour ca que ca marche ...


 
voila j'ai 2 variables d'environnement :
DOS> echo %PYTHONPATH%
   --> .;C:\jython-2.1;C:\jython-2.1\Lib;c:\python21;c:\python21\Lib;D:\jython\Lib;d:\jython\Lib\test
 
Je place mes modules dans d:\jython\Lib
 
DOS> echo %PYTHON_HOME%
   --> c:\jython-2.1  
 
Avant dans mon interpréteur embarqué je n'arrivai même pas à importer des modules depuis 'd:\jython\Lib', j'ai résolu le problème en utilisant la fonction PythonInterpreter.initialize(...) et en lui indiquant les valeurs de 'python.home' et 'python.path'.
 
pour info, j'utilise jython 2.1 avec python 2.1.3 et le jdk1.4.2 sous window$ 2000
 
 
Toutes les idées seront bienvenues ... je desespère là  :cry:  
merci
 
vince

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed