问题描述
我在路径 /home/krishma/test
中有一个文件夹。 test 文件夹包含一个子文件夹和 python 文件。
example:
test -> db -> db.py
我想在 /user/scripts
处的第二个文件夹中使用 test 文件夹的 python 文件。
example:
scripts -> test -> test.py
在第二个文件夹中,
我有一个名为 test.py
的文件,我想导入第一个测试文件夹中的 db.py
。
如何在 db.py
中导入 test.py
?
解决方法
您可以读取当前目录并根据需要操作路径。
import os
current_folder= os.getcwd()
路径操作请看https://docs.python.org/3/library/os.path.html
,有两种方法可以解决这个问题,
- 通过向其中添加 init.py 文件将您的 db 目录转换为包。
要创建包看看这个-https://www.tutorialsteacher.com/python/python-package
- 通过修改 sys.path。
在导入文件时,Python 只搜索运行入口点脚本的目录和 sys.path,其中包括包安装目录等位置(实际上比这个复杂一点,但这涵盖了大多数情况).
但是,您可以在运行时添加到 Python 路径:
# some_file.py
import sys
# insert at 1,0 is the script path (or '' in REPL)
sys.path.insert(1,'/path/to/application/app/folder')
import file
看看这个-https://stackoverflow.com/questions/4383571/importing-files-from-different-folder