Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python导入模块因_init__uu.py而失败_Python_Import - Fatal编程技术网

Python导入模块因_init__uu.py而失败

Python导入模块因_init__uu.py而失败,python,import,Python,Import,我有两个文件夹,每个文件夹包含几个python模块: 1. pyA: /a /b /c 2. pyB: /d /e /f 1.pyA: /a /b /c 2.pyB: /d /e /f 我已将\uuuu init\uuuuu.py(空)添加到两个文件夹中。 然而,当我尝试在pyA中导入pyB时,我得到了“ImportError:没有名为pyB的模块” 我已经查看了已有的答案,但找不到解决方案。非常感谢您的建议。除非pyB的根文件夹位于PYTHONPATH中,否则这是意料之

我有两个文件夹,每个文件夹包含几个python模块:

1. pyA: /a /b /c 2. pyB: /d /e /f 1.pyA: /a /b /c 2.pyB: /d /e /f 我已将
\uuuu init\uuuuu.py
(空)添加到两个文件夹中。 然而,当我尝试在pyA中导入pyB时,我得到了“ImportError:没有名为pyB的模块”


我已经查看了已有的答案,但找不到解决方案。非常感谢您的建议。

除非pyB的根文件夹位于PYTHONPATH中,否则这是意料之中的。pyA文件夹中的文件不知道pyB在哪里

(或)请执行以下操作:

import sys

sys.path.append(/path/to/parentfolderofPyB)
import pyB

或者,如果您确定在pyB中不使用pyA,您可以将pyB移动到pyA文件夹中

a
b
c
d
e
f
目录吗?不,a、b、c是文件,pyA和d、e、f文件夹中的文件都在pyB中。我已将sys.path.insert(0,os.path.abspath(“…”)添加到我的文件中,在该文件中我执行导入操作,并且可以正常工作。但是,我应该将这一行添加到我从其他文件夹导入的任何文件中?我应该在哪里添加这一行?将这两行代码添加到PyA中的所有py模块中,如果您需要pyB导入,那么如何使用python包呢?似乎应该有更好的解决方案。即使它是python包,也应该在system path或PYTHONPATH中,以便其他模块访问itI。我想我可以将一级以上的文件夹添加到主模块上的syspath,然后只需使用包: