Importlib,因为目录名称仅由数字组成。 -common.py仅包含许多变量。
我遇到的问题是:
.../220_04_070/unicorn.py", line 1, in <module>
from common import *
ModuleNotFoundError: No module named 'common'.
我可以通过在unicorn.py
from .common import *
main.py和
unicorn.py正在使用 -common.py
。结构如下:|-- main.py
|
|-- 220_04_070
|-- common.py
|-- unicorn.py
main.py
import importlib
uc = importlib.import_module('220_04_070.unicorn')
cm = importlib.import_module('220_04_070.common')
mycorn = uc.unicorn()
Unicorn.py
from common import *
class unicorn():
def __init__(self):
None
所有人都使用Python3.12.3(Ubuntu 24.04)运行。,我的问题是我应该如何处理?
我设法使其运行。我有一个解决方案,但是也许还有另一种方法。
i我将我的
common.py文件更改为:
import importlib
#check if it's run from above or from local main()
if __name__ == '__main__':
common = importlib.import_module('common')
else:
common = importlib.import_module('220_04_070.common')
class unicorn:
def __init__(self):
None
def get_data(self):
print("var: ", common.VAR1)
def main():
mycorn = unicorn()
if __name__ == '__main__':
main()