我想測試一些代碼。主腳本需要從多個子目錄導入。腳本的結構是這樣的(我編輯它,使之清楚,DIR1和2是構建子目錄):如何搜索正確的目錄進口
build
ascript.py
dir1
script2.py
dir2
script3.py
subdir1
script4.py
script5.py
subdir2
script6.py
.
.
.
注:不是一個完整的表示。
有人告訴我,通過命令shell來測試SCRIPT2,更改到構建目錄,然後鍵入:
SET PYTHONPATH="." python dir1/script2.py
該腳本一個有一個import語句:
from dir2.script3 import *
Script3呼籲從進口位於一個或多個目錄或子目錄文件夾中的腳本
所以當運行SET命令時。 。 。 (見上)我沒有輸出。以爲這是我的問題不是代碼問題,我複製DIR2到
C:\PROGRAM FILES\python264
跑在CMD相同的指令提示,我得到了一些局部輸出
這告訴我,SET PYTHONPATH不工作正如Windows XP中預期的那樣。
我希望這個問題有道理。
針對SLOTT的要求 - 但是,讀了他的問題後,我明白了一個問題是,我不明白,我其實提交兩個命令
注意有一個名爲名爲目錄節點腳本HTML是parsers2的子目錄,這是核心的一個子目錄是在同一級別爲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 =「。」'和'python dir1/script2.py'是兩個命令。你說這是一個。你剛剛打了什麼**,你看到了什麼?請複製並粘貼您的整個Windows終端會話。 – 2010-09-30 15:31:33
我對這個問題並不完全確定,但是這裏有一個指向文檔的鏈接:http://docs.python.org/tutorial/modules.html#the-module-search-path – babbitt 2010-09-30 15:33:58