簡體   English   中英

python 中的相對進口,我不知道有多少次

[英]relative imports in python for i don't know how many times

我看過這些網站:

python 相對導入示例代碼不起作用

十億次相對進口

https://peps.python.org/pep-0328/

Python 包:相對進口

Python中的相對進口

並加載更多我沒有顯示的內容,但它們(答案/代碼)由於某種原因無法相對導入其他 Python“模塊”。 永遠,我有這個永遠重復出現的錯誤: ImportError: attempted relative import with no known parent package

我的目錄結構如下所示:

program/
|_ main.py
|_ lib/
    |_ __init__.py
    |_ module1.py
    |_ module2.py
    |_ module3.py

在 main.py 中:

from .lib.module1 import do_this
print('Imported')

在 module1.py 中:

def do_this():
    print('I did it')

我正在使用 Linux 來執行此操作,但它不起作用!!!

編輯:

我不想做python3 -m <module> main.py而且顯然沒有點它仍然無法工作。

我遇到過類似的問題,我創建了一個實驗性的新導入庫ultraimport ,它允許進行基於文件系統的導入來解決您的問題。

然后在你的 main.py 中你會寫:

import ultraimport
do_this = ultraimport('__dir__/lib/module1.py', 'do_this')
print('Imported')

無論您如何運行代碼,它都會始終有效。

暫無
暫無

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

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