簡體   English   中英

如何在Python 3中創建包? ModuleNotFoundError

[英]How to create packages in Python 3? ModuleNotFoundError

我按照Python Central上的簡易指南為我的代碼創建一個包:

https://www.pythoncentral.io/how-to-create-a-python-package/

所以我的目錄結構是:

main.py
pack1/
         __init__.py
         Class1.py

main.py文件中,我導入並使用Class1

from pack1 import Class1
var1 = Class1()

__init__.py文件中我寫了:

import Class1 from Class1

我完全按照指南,仍然得到錯誤:

ModuleNotFoundError: No module named 'Class1' (in __init__.py)

Python 3具有絕對導入 __init__.py更改為:

from .Class1 import Class1

前導點表示相對於__init__.py的位置找到此模塊,此處位於同一目錄中。 否則,它會查找具有此名稱的獨立模塊。

PEP 328提供了所有細節。 從Python 3.0開始,這是唯一的方法

刪除了語法

相對導入唯一可接受的語法from .[module] import name 所有import表單都不以. 被解釋為絕對進口。 (PEP 0328)

文件Class1.py包含以下代碼:

class Class1:
    pass

暫無
暫無

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

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