假设一个Python包(例如MyPackage
)由几个模块(例如MyModule1.py
和MyModule2.py
)和一组单元测试(例如在MyPackage_test.py
中)组成)。
.
├── MyPackage
│ ├── __init__.py
│ ├── MyModule1.py
│ └── MyModule2.py
├── README.md
├── requirements.txt
├── setup.py
└── tests
└── MyPackage_test.py
我想在MyModule1.py
的单元测试中导入MyPackage_test.py
的功能。具体来说,我想通过setup.py install MyPackage
导入软件包安装之前和之后的功能。
当前,我正在使用两个单独的命令,具体取决于软件包安装之前或之后的状态:
# BEFORE
import sys, os
sys.path.append(os.path.join(os.path.dirname(__file__), '..', 'MyPackage'))
# AFTER
import MyPackage
这可以用一个命令完成吗?
答案 0 :(得分:2)
选项1 :
以下命令似乎可以满足我的要求:
System.out.println(x*y);
选项2 :
这也取决于sys.path.append(os.path.join(__file__.split(__info__)[0] + __info__), __info__)
的位置:
__init__.py
选项3 :
此外,ResourceManager API似乎还提供了其他方法。
答案 1 :(得分:0)
在pycharm IDE中,可以通过将工作目录设置为包含所有文件的文件夹来轻松导入方法。
然后,在MyPackage __init__.py
文件中,从{{1}导入所有功能}和MyModule1.py
。
然后在MyPackage_test.py中,您可以使用
MyModule2.py