[英]How to import a file from the same directory in python?
我在python中具有以下目錄結構。
├── mel2samp.py
├── tacotron2
│ ├── layers.py
在mel2samp.py中,我想使用以下代碼行從tacatron2.layers導入TacotronSTFT
import sys
sys.path.insert(0, 'tacotron2')
from tacotron2.layers import TacotronSTFT
但這會引發錯誤ImportError: No module named tacotron2.layers
。
在tacotron2
文件夾中還需要一個空的__init__.py
文件。 之后,您可以執行以下操作:
import sys
from tacotron2.layers import TacotronSTFT
import sys
sys.path.insert(0, 'tacotron2')
from tacotron2.layers import TacotronSTFT
# Use TacotronSTFT
但是建議通過添加init.py使tacotron2成為軟件包。
然后您可以將其用作
from tacotron2.layers import TacotronSTFT #Use TacotronSTFT
您可以通過添加__init__.py
將文件夾打包
您可以在這里了解更多信息
__init__.py
文件是使Python將目錄視為包含包所必需的; 這樣做是為了防止具有通用名稱的目錄(例如string
)無意間隱藏了稍后在模塊搜索路徑上(更深層)出現的有效模塊。 在最簡單的情況下,__init__.py
可以只是一個空文件,但它也可以為該程序包執行初始化代碼或設置__all__
變量,如后所述。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.