簡體   English   中英

已安裝自定義模塊,但可以按名稱導入

[英]Custom module installed but can import by name

我有一個項目,我正在嘗試使用 conda、安裝和運行 package。

盡管已安裝,但我無法按名稱導入模塊。 但是,我可以導入模塊main.py並執行它的 function print_hi 如下所示。

Python 3.10.4 (main, Mar 31 2022, 08:41:55) [GCC 7.5.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import myfuncondaproject
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'myfuncondaproject'
>>> import main
>>> main.print_hi("Liam")
Hi, Liam

我的項目結構。

myfuncondaproject/
├── __init__.py
├── main.py
└── setup.py

似乎與建議的文件結構一致,盡管我假設問題出在結構上。

Python 在 sys.path 文件夾中查找導入。 當您在 Python 提示符上檢查 sys.path 時,您總是會首先找到當前文件夾。

我猜在您的情況下,當前文件夾是 myfuncondaproject,這就是 Python 可以找到模塊的原因。 要查找myfuncondaproject本身,您需要將其父文件夾添加到 sys.path

請注意,推薦的安裝自己的包的方法是可編輯安裝 使用 conda 這是

conda develop <path to  myfuncondaproject>

如何通過 conda 安裝我自己的 python 模塊(包)並觀察其變化

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM