J'essaie de tester du code. Le script principal nécessite des importations provenant d'un certain nombre de sous-répertoires. La structure des scripts est comme ça (je modifié pour préciser que dir1 et 2 sont des sous-répertoires de construction):Comment rechercher le bon répertoire pour les importations
build
ascript.py
dir1
script2.py
dir2
script3.py
subdir1
script4.py
script5.py
subdir2
script6.py
.
.
.
Note: Pas une représentation complète.
On m'a dit de tester SCRIPT2 par shell de commande, passez dans le répertoire de construction et puis tapez:
SET PYTHONPATH="." python dir1/script2.py
Ce scénario on a une déclaration d'importation:
from dir2.script3 import *
Script3 appelle une importation de scripts qui se trouvent dans un ou plusieurs des dossiers dir ou subdir
Ainsi, lorsque vous exécutez la commande SET. . . (voir ci-dessus) Je n'ai pas de sortie. Pensant que cela est un problème de moi pas un problème de code que je copiais dir2 à
C:\PROGRAM FILES\python264
administraient les mêmes instructions à l'invite CMD et j'ai une sortie partielle
Cela me dit que le SET PYTHONPATH ne fonctionne pas comme prévu dans Windows XP.
J'espère que cette question a du sens.
En réponse à la demande de SLOTT - cependant, après avoir lu sa question, je compris que l'un problème est que je ne comprenais pas que j'étais en fait de soumettre deux commandes
Remarque il y a un script appelé nœud dans le répertoire nommé html qui est un sous-répertoire de parsers2 qui est un sous-répertoire du noyau qui est au même niveau que exp
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\burchkealey.UNO_CBA>cd c:\
C:\>cd c:\texttool1\build
C:\texttool1\build>set pythonpath="."
C:\texttool1\build>python exp/extract_section.py c:\testextract\c40545.htm
Traceback (most recent call last):
File "exp/extract_section.py", line 4, in <module>
from core.parsers2.html.node import *
ImportError: No module named core.parsers2.html.node
C:\texttool1\build>
'SET PYTHONPATH =". "' Et 'python dir1/script2.py' sont deux commandes. Vous avez dit que c'était un. Qu'est-ce que ** précisément ** avez-vous tapé et que ** précisément ** avez-vous vu? Veuillez copier et coller l'ensemble de votre session de terminal Windows. –
Je ne suis pas tout à fait sûr de la question, mais voici un lien vers la documentation: http: //docs.python.org/tutorial/modules.html#the-module-search-path – babbitt