需要了解如何从一个目录向上导入python模块
我有一个这样的结构需要了解如何从一个目录向上导入python模块,python,python-3.x,Python,Python 3.x,我有一个这样的结构 pkg1 __init__.py file_1.py file2.py pkg2 test_1.py __init__.py 我有一个类似上面的结构。我在test_1.py中有一个代码,它正试图加载文件_1.py #test_1.py from pkg1 import file_1 # from .. import file_1 这两种说法都不起作用。如何从pfg1导入文件_1一个python程序可以通过直接向sys.path添加元
pkg1
__init__.py
file_1.py
file2.py
pkg2
test_1.py
__init__.py
我有一个类似上面的结构。我在test_1.py
中有一个代码,它正试图加载文件_1.py
#test_1.py
from pkg1 import file_1
# from .. import file_1
这两种说法都不起作用。如何从pfg1导入文件_1一个python程序可以通过直接向sys.path添加元素来修改其路径。 导入sys,然后可以在运行时添加到系统路径:
import sys
sys.path.insert(0, 'path/to/your/py_file')
import py_file
或者您可以这样做:
import sys
import os
base_dir = os.path.dirname(__file__) or '.'
# Insert the package_dir_a directory at the front of the path.
package_dir_a = os.path.join(base_dir, 'package_dir_a')
sys.path.insert(0, package_dir_a)
import py_file
python程序可以通过直接向sys.path添加元素来修改其路径。 导入sys,然后可以在运行时添加到系统路径:
import sys
sys.path.insert(0, 'path/to/your/py_file')
import py_file
或者您可以这样做:
import sys
import os
base_dir = os.path.dirname(__file__) or '.'
# Insert the package_dir_a directory at the front of the path.
package_dir_a = os.path.join(base_dir, 'package_dir_a')
sys.path.insert(0, package_dir_a)
import py_file
使pkg2成为一个带有
\uuu init\uuuu.py
的包,如果它是pytest
调用它作为python-m pytest
我尝试了这个方法,但没有成功。我已经有一个init.py,上面我忘了提到。这是否回答了你的问题?如何运行测试?@NizamMohamed:python使pkg2成为一个带有\uuu init\uuu.py
的包,如果它是pytest
则作为python-m pytest
调用它。我尝试了这个方法,但没有成功。我已经有一个init.py,上面我忘了提到。这是否回答了你的问题?如何运行测试?@NizamMohamed:python