操作不同文件夹中的文件时,将一个文件中的函数导入到另一个文件中可能会很困难。这种情况在各种目录结构中都会遇到,通常涉及嵌套文件夹和多个文件。
考虑下面的目录结构:
application ├── app │ └── folder │ └── file.py └── app2 └── some_folder └── some_file.py
在这种情况下,如何导入一个函数(例如, func_name) 在 some_file.py 中的 file.py 中定义?虽然 from application.app.folder.file import func_name 的直观方法看似合理,但它经常会产生错误。
默认情况下,Python 仅检查入口点脚本(正在执行的脚本)所在的目录驻留和 sys.path,其中包括软件包安装的路径。如果所需的文件不在这些位置,则导入失败。
但是,可以动态扩展 Python 的搜索路径:
# some_file.py import sys # appending search path sys.path.insert(1, '/path/to/application/app/folder') # importing file and function import file func_name()
通过将包含 file.py 的目录插入到搜索路径,Python 现在可以成功导入它。这种方法允许跨不同目录灵活处理文件,使其成为处理隔离文件结构时有价值的解决方案。
以上是如何从 Python 中的单独目录导入函数?的详细内容。更多信息请关注PHP中文网其他相关文章!