我具有以下文件夹结构
project_folder/
pyutils/
__init__.py
script1.py
script2.py
lambdas/
__init__.py
lambda_script1.py
lambda_script2.py
lambda_tests/
__init__.py
lambda_test1.py
在lambda_test1.py
内,我进行了以下尝试
from lambdas.lambda_script1 import * # errors saying no module named lambdas
from .lambdas.lambda_script1 import * # errors saying ModuleNotFoundError: No module named '__main__.lambdas'; '__main__' is not a package
from ..lambdas.lmabda_script1 import * # errors saying tried to import above top level path
我正在尝试使用类似的命令
从项目文件夹中运行测试python pyutils/lambda_tests/lambda_test1.py
但是所有选项似乎都不起作用
如果我从IPython
文件夹中运行pyutils
并运行from lambdas.lambda_script1 import *
,它将起作用。这是python路径问题吗?
我还尝试在项目文件夹中添加__init__.py,但仍然无法正常工作
答案 0 :(得分:0)
project_folder/
pyutils/
__init__.py
script1.py
script2.py
lambdas/
__init__.py
lambda_script1.py
lambda_script2.py
lambda_tests/
__init__.py
lambda_test1.py
首先,将pythonpath导出为项目的根
export PYTHONPATH=/path/to/project_folder/py_utils
然后您将使用以下导入:
import script1
import script2
import lambdas.lambda_script1
import lambdas.lambda_script2
import lambdas_tests.lambda_test1