Python - 从并行目录导入函数

问题描述 投票:0回答:1

假设我有两个并行目录,其中包含简单的 python 文件。
--'dir_one' 与 file_one.py
--'dir_two' 与 file_two.py

在file_one.py中有一个名为function_one的函数。 如何将其导入 file_two.py 中? 我确实检查了几十个来源,包括 stackoverflow 上的答案。因此,我不会在这里引用其中任何一个。我尝试了四种不同的解决方案,但都不起作用。

  1. 在所有目录中插入“init.py”文件 - 导致错误“ImportError:尝试在没有已知父包的情况下进行相对导入”
  2. 使两个目录成为一个包 - 在这种情况下不可能,目录必须能够作为独立的应用程序运行。
  3. 在“import dir_one”行之前使用 sys 模块:sys.path.insert(0, 'path-to-dir_one') - 不会改变任何内容,仍然得到“ModuleNotFoundError:没有名为“dir_one”的模块。
  4. 尝试相对导入:'from .dir_one import file_one' - 'ModuleNotFoundError:没有名为'zweizen.prodalitics'的模块。

是否可以从并行文件夹中导入 python 中的函数而不使其成为同一包的一部分?

python python-import python-module python-packaging
1个回答
0
投票

Example for Packaging and moduling

这张图给你解释了封装和模块化的概念。

© www.soinside.com 2019 - 2024. All rights reserved.