假設我有一個包結構類似:如果一個Python包只是一個模塊,那麼這個模塊能否從姐妹模塊導入並公開他們的功能?
root
+-- package_as_a_module.py
+-- setup.py
+-- requirements.py
在我的情況,package_as_a_module.py
的增長遠遠大於最初預計,和它變得難以管理。是否有可能以一個新的模塊添加到根目錄下,說utils.py
:
# utils.py
def func_a()
return "Hi!"
,然後通過一個import語句暴露的utils.py
功能爲package_as_a_module.py
,如:
# package_as_a_module.py
from utils import func_a
所以在安裝後,我可以使用from package_as_a_module import func_a
?
我試過沒有成功,here。主模塊導入的模塊無法識別,導入失敗。我懷疑這可能是一個真正的包結構,可能在初始化 .py文件或什麼的。接下來我會給你一個旋風。
如果沒有人提出替代方案,我會回答我自己的問題。
你試過了嗎? –
@ st.ph.n直到今天晚上,我都沒有機會回家。如果在此之前沒有人回答,我會回答我自己的問題。 –
我只是沿着PoC的路線走,你應該證明你嘗試過了,失敗了,現在你正在尋求幫助。理論上,它應該可以工作,但是會依賴於模塊的其他依賴。 –