ImportError: Module not found but sys.path is showing the file resides under the path
ImportError: Module not found but sys.path is showing the file resides under the path
当我在我的代码中打印 sys.path 时,我得到以下输出:
['C:\Netra_Step_2015\Tests\SVTestcases'、'C:\Netra_Step_2015\Tests\SVTestcases\TC-Regression'、'C:\Python27\python27.zip'、'C:\Python27\DLLs'、'C:\Python27\lib' 等]
现在,当我写 "import testCaseBase as TCB" 时,testcaseBase.py 位于这条路径中:
C:\Netra_Step_2015\Tests\SVTestcases\Common\shared
我得到一个错误:“ImportError:没有名为 testCaseBase 的模块”
我的代码在 C:\Netra_Step_2015\Tests\SVTestcases\TC-Regression\regression.py 中。我的代码继续编译,但驻留在并行目录中的 testcaseBase.py 无法编译。
可能是什么原因?
放
C:\Netra_Step_2015\Tests\SVTestcases\Common\shared
在你的 PYTHONPATH 环境中
也许我遗漏了什么,但是这个文件路径...
C:\Netra_Step_2015\Tests\SVTestcases\Common\shared
...不在您的 sys.path
中,因此出现错误也就不足为奇了。不过,您有多种选择。更改项目结构,或者,如果 Common
和 shared
是实际的包,其中定义了 __init__.py
,请执行:
import Common.shared.testCaseBase
您也可以在调用脚本中附加路径,因此:
sys.path.append('\SVTestcases\Common\shared')
或者,实际上只需将以下路径添加到您的 ENV 变量 (PYTHONPATH
)
C:\Netra_Step_2015\Tests\SVTestcases\Common\shared
但每次都用编辑 PYTHONPATH
来代替良好的目录结构和导入技术并不一定是个好习惯。如果你换一种方式解决这个问题,你会过得更好。
请不要在路径中使用 ~/ 。这是行不通的。使用完整路径。
当我在我的代码中打印 sys.path 时,我得到以下输出:
['C:\Netra_Step_2015\Tests\SVTestcases'、'C:\Netra_Step_2015\Tests\SVTestcases\TC-Regression'、'C:\Python27\python27.zip'、'C:\Python27\DLLs'、'C:\Python27\lib' 等]
现在,当我写 "import testCaseBase as TCB" 时,testcaseBase.py 位于这条路径中:
C:\Netra_Step_2015\Tests\SVTestcases\Common\shared
我得到一个错误:“ImportError:没有名为 testCaseBase 的模块”
我的代码在 C:\Netra_Step_2015\Tests\SVTestcases\TC-Regression\regression.py 中。我的代码继续编译,但驻留在并行目录中的 testcaseBase.py 无法编译。
可能是什么原因?
放
C:\Netra_Step_2015\Tests\SVTestcases\Common\shared
在你的 PYTHONPATH 环境中
也许我遗漏了什么,但是这个文件路径...
C:\Netra_Step_2015\Tests\SVTestcases\Common\shared
...不在您的 sys.path
中,因此出现错误也就不足为奇了。不过,您有多种选择。更改项目结构,或者,如果 Common
和 shared
是实际的包,其中定义了 __init__.py
,请执行:
import Common.shared.testCaseBase
您也可以在调用脚本中附加路径,因此:
sys.path.append('\SVTestcases\Common\shared')
或者,实际上只需将以下路径添加到您的 ENV 变量 (PYTHONPATH
)
C:\Netra_Step_2015\Tests\SVTestcases\Common\shared
但每次都用编辑 PYTHONPATH
来代替良好的目录结构和导入技术并不一定是个好习惯。如果你换一种方式解决这个问题,你会过得更好。
请不要在路径中使用 ~/ 。这是行不通的。使用完整路径。