2017-02-01 57 views
-1

是有可能對我有2個分離的Python包,其中命名空間的第一部分是相同的:如何創建2個Python包具有共同的命名空間前綴

pyPackageOne:

package_one 
| 
|-companyname 
    | 
    |-__init__py 
    |-moduleone 
     | 
     |-__init__.py 
     |-dostuff.py 

pyPackageTwo:

package_two 
| 
|-companyname 
    | 
    |-__init__py 
    |-moduletwo 
     | 
     |-__init__.py 
     |-dothings.py 

so companyname是名稱中的共享前綴嗎?

我希望能夠安裝和使用這兩個軟件包:

$ pip install moduleone 
$ pip install moduletwo 
>>> from companyname.moduleone import dostuff 
>>> from companyname.moduletwo import dothings 

我使用python 3.6

+0

我認爲你的項目結構應該工作。在這裏問問題之前,你有沒有測試過? – Pax0r

+1

@ Pax0r:我做了,但感謝您的評論我發現我的包中的錯誤,我認爲這與共享名稱有關。謝謝! – polo

+0

@ Pax0r這個策略失敗的地方是當我嘗試在另一個包中使用一個包時:例如,如果dothings.py包含:'from companyname.moduleone import dostuff' – polo

回答