簡體   English   中英

導入自定義模塊python時省略子目錄

[英]Omitting subdirectories when import custom modules python

crispy13/
    __init__.py
    core/
        __init__.py
        ecf.py

如何通過以下方式加載 ecf 模塊?

from crispy13 import ecf
OR
from crispy13.ecf import *

代替
from crispy13.core.ecf import *

crispy13/__init__.py中將包導入為

from .core import ecf

就像sahasrara62說的可以通過以下方式完成

crispy13/__init__.py您的模塊導入為

from .core import ecf

您還可以在__init__.py文件中使用__all__變量。

這是一個非常好的導入模塊/函數/類的方式。

對我們為什么以這種方式進行導入的一點見解。
假設您正在使用第三方庫/包,並且模塊中有一些實現更改

  1. 更改您正在導入的函數/類的位置
  2. 刪除一個模塊並將其內容放入同一包的另一個模塊中

那么您的導入將中斷。

這就是為什么所有第三方庫/包都在其包的根__init__.py文件中包含所有可使用的函數/類/模塊的原因。

暫無
暫無

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

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