[英]How to properly import from a parent folder?
我有一個文件樹:
Root Folder
├───Modules
│ └───RPi
│ ├──__init__.py
│ └──RPi.py
└─program.py
RPi.py
def foo():
print("bar")
__init__.py
import RPi
program.py
mod1 = __import__("Modules.RPi.RPi")
mod1.foo()
調用mod1.foo()
我得到AttributeError: 'module' object has no attribute 'foo'
我使用__import__
而不是import語句的原因是因為“Module”子目錄和名稱僅在運行時才知道。
考慮到這一點, 如何在program.py
中導入RPi.py
,以便從program.py
(上面的mod1.foo()
示例) 訪問頂層(全局)函數和變量 ?
我找到了解決方案。
我不得不改變
import RPi
至
from RPi import *
在init .py文件中
和
mod1.foo()
至
getattr(mod1, foo)()
在program.py中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.