2011-12-02 56 views
3

我即將開始使用WinXP(後來的Win7)上的jython編程python。在我嘗試使用開箱即用的解釋器之後,我想嘗試編寫獨立模塊。Python(Jython)中的第一步:導入

我的問題是:

我在哪裏必須放置.py文件?

如何運行它們?

如何導入與「主」腳本不在同一目錄中的腳本? (從相對/絕對路徑導入腳本/類/函數) 我打算在工作區文件夾(例如'C:\ pythonWorkspace')中創建我自己的python腳本庫,以便在多個項目中導入它們。

編輯:添加使用OS:WinXP中/ Win7的

+1

使用Linux ?贏得?基本上,你既可以添加一個位置pythonpath,也可以將模型放在libs \ site-packages中,無論如何python搜索。你可以從命令行運行一個模塊(如果它有__name __ ==「main」部分),使用類似「python modulename」的python解釋器 – alonisser

+0

這是否意味着我必須將所有文件放入python \ libs文件夾?如何引用存儲在C:\ myProject中的.py文件?我不太清楚如何解釋'__name__'表達式 – poeschlorn

回答

0

相對/絕對路徑應該在PYTHONPATH,示例代碼:

import os,sys 
#change to your path 
sys.path.append(os.path.join(os.path.dirname(__file__),'lib')) 
+0

'lib'是指路徑和__file__路徑中的文件名? – poeschlorn

+1

@poeschlorn:不,'__file__'是包含運行_right then_的代碼的文件的文件名。它的意思是「_this file_」 –

+0

好。所以我是對的,這段代碼會將腳本的路徑(通過__file__)添加到我的操作系統的PATH環境變量中? – poeschlorn

0

您可以添加的lib \站點包一個PTH文件含有類似的信息(example.pth):

c:\myProject 

,然後你可以僅僅通過名字

導入模塊

一個模塊中,你寫的 - 如果你希望它運行在命令行的東西(或從空轉和比開菜單) - 在模塊的末尾,你寫:

if __name__=="main": 
    do something 
    print something 
    run somefunction()#from the module