只有一個或兩個模塊,我需要從一個文件夾包含其他幾個Python模塊。當我將文件夾添加到我的路徑中時,我有效地使該文件夾中的所有模塊都可供我使用。但有幾個過期的模塊,我不想要。是否有可能只爲我提供這些模塊的某個子集?Python:是否有可能只有你的sys.path文件夾中的特定模塊
回答
如果
import X
你只進口模塊X.沒有別的。你的Python路徑上的東西不等於被自動導入(它只是可導入的)。另請參見:
我其實意味着可以導入,而不是實際導入。例如,我在virtualenv中個人安裝了numpy,並且全局系統上有一個過時的版本。我只想從全球圖書館購買PyQt,但我不想冒險讓舊版本的numpy與全球版本衝突。 – 2012-04-08 19:52:13
讀你的問題我的理解是
- 要包括在你的PYTHONPATH的文件夾,因爲你需要幾個模塊,從它。
- 由於它包含一些與您使用的版本相比可能已經過期的其他模塊,因此您不想最終導入錯誤的庫。
我會建議兩個選項,可能適合你。
- 確保您包含的此文件夾位於
sys.path
的末尾。這將確保您已經導入的任何模塊(如果存在於新包含的文件夾中)不會從該特定位置導入。 - (僅用於* nix)創建另一個文件夾,併爲您感興趣的文件創建符號鏈接。然後應該包含您創建的其他文件夾。
閱讀您的意見,我建議,最好的辦法是在某處添加以下行腳本,但你import`之前
import sys
sys.path.append('/whatever')
是的,這正是我所要求的。無論如何要確保我包含的文件夾位於sys.path的末尾嗎? 例如,是否有添加PYTHONPATH中的目錄的時間順序? – 2012-04-08 19:56:26
@ChristopherDorian:你打算如何將路徑添加到sys.path?如果你澄清它會更容易回答。一個顯而易見的方法是'import sys \ nsys.path.append(「/ whatever」)'。這可以確保您的庫位於搜索路徑的末尾。你還有其他方式嗎? – Abhijit 2012-04-08 19:58:29
現在,我一直在使用PYTHONPATH來添加文件夾。到目前爲止,它出現在sys.path中我自己的本地庫下面,但我不確定這是否總是如此。 – 2012-04-08 20:03:08
創建一個新的目錄。對於要導入的每個模塊,添加一個指向真實模塊的符號鏈接(ln -s
)。然後將新目錄添加到您的路徑中,並且您不必使用包含訂單來玩遊戲。
mkdir ./mymods
export PYTHONPATH="$PYTHONPATH":`pwd`/mymods
cd mymods
ln -s ../allmods/module1.py
ln -s ../allmods/module2.py
- 1. Python:是否有可能只使用doctest在模塊中測試特定函數?
- 2. 是否有可能知道在AS2或AS3的特定Web文件夾中有哪些文件可用?
- 3. 是否有可能在python中重疊不同的模塊?
- 4. 是否有可能在Python中的「導入模塊」中獲得「導入模塊」?
- 5. WPF - 只有DataGridColumn中的特定單元格才具有CheckBox ...是否有可能?
- 6. 是否有可能使所有模塊隱式導入模塊?
- 7. 是否有可能創建設備特定的.plist文件-iOS
- 8. 是否有一個從python csv模塊構建的方法來枚舉特定列的所有可能的值?
- 9. 是否有可能只跟蹤一個git分支中的文件夾?
- 10. Python模塊註釋是否有約定?
- 11. Python列表只包含特定子文件夾的文件夾
- 12. 是否有可能只在我的項目中使用Django模型模塊?
- 13. Python - 處理特定文件夾中的所有文件
- 14. 是否有可能從谷歌驅動器獲取特定文件夾的所有文件?
- 15. 是否有可能爲不同的文件夾有不同的.gitconfig文件
- 16. 是否有可能只處理特定郵件的郵件觀察者?
- 17. 多個地方。是否有可能只能在LINQ中執行特定的WHERE?
- 18. 是否有可能擁有xml-land資源文件夾?
- 19. 是否有可能簽出沒有這些.svn文件夾的顛覆文件?
- 20. 是否有可能使用python將文件複製到Windows啓動文件夾?
- 21. 查找具有特定名稱的所有子文件夾,使得超級文件夾具有特定模式
- 22. Python是否將模塊路徑中的所有模塊導入?
- 23. 只需鍵入文件夾名稱即可運行python模塊
- 24. rsync的複製從特定的子文件夾只有特定的文件,而無需創建空文件夾
- 25. 是否有可能只用carrierwave重新創建特定版本?
- 26. 是否可以嵌入文件夾中的所有文件?
- 27. 是否有可能在Tomcat服務器中擁有XMPP模塊?
- 28. 是否有可能在Haskell中有子模塊?
- 29. 是否有可能將AngularJS模塊與其他模塊分開?
- 30. 是否有可能在python
刪除過時的? – miku 2012-04-08 19:36:07
不要導入過時的? – 2012-04-08 19:37:09
將過期的人移到另一個文件夾? – unsym 2012-04-08 19:44:12