2011-03-03 69 views
8

這可能已經問過,而且是非常基本的導入腳本,但:的Python:在空閒

我使用Windows 7.我有空閒的Python 2.4.4和3.1。我有一些腳本駐留在我的文件系統的任意位置。我想導入它們並與它們的類型一起玩。我該怎麼做?

在Ubuntu中,在命令行上,import scriptname可以工作,如果我調用python的目錄包含scriptname。我將如何從其他地方導入腳本?

+1

http://docs.python.org/tutorial/modules.html#the-module-search-path – 2011-03-03 02:28:05

回答

6

在閒置狀態下,您可以附加一個包含scriptname.py文件的路徑。

>>> import pprint 
>>> import sys 
>>> print pprint.pprint(sys.path) 
# you could just move your scriptname.py to a directory in the sys.path list 
>>> sys.path.append(r"C:\Users\You\") 
>>> import scriptname 

你也可以自定義窗口的PYTHONPATH環境變量,包括其他目錄,如「C:\用戶\你\ LIB」

+2

不要忘記逃脫(sys.path.append(「C:\\ Users \\ You \\」)或簡單地sys.path.append(r「C:\ Users \ You \」))的反斜槓 – cwa 2012-03-06 18:51:36

+0

...或sys.path.append('C:/ Users/You') – kmote 2012-12-24 04:20:49

1

導入從IDLE腳本,你可以這樣做:

>>> import os 
>>> os.chdir('C:\\Users\\You\\Some\\Arbitrary\\Path') 
>>> import scriptname 

請記住,你將需要調用構造函數與scriptname.預先考慮,像scriptname.myClass(...)

如果您在腳本中改變一些東西,你將需要重新加載這樣的:

>>> import imp 
>>> imp.reload(scriptname) 

(還有一個更簡單的方法,如果你只是想從一個腳本類型玩耍,如果腳本只包含函數和類定義(沒有正在運行的代碼)。然後,您可以簡單地在IDLE中打開腳本並轉至Run>Run Module。當您使用此方法,這是沒有必要的構造函數之前把scriptname.