ModuleNotFoundError: No module named - 尝试从另一个文件夹导入文件时

时间:2021-05-31 07:37:51

标签: python python-import

我正在尝试运行从另一个文件夹导入 .py 文件的代码。层次结构如下:

enter image description here

这是我在 AppiumTest 文件中调用导入的代码部分:

from appium import webdriver
import unittest
from test.pageObj.LoginPage import LoginActivity
from test.pageObj.HomePage import HomeActivity

尝试运行时出现此错误消息:

<块引用>

ModuleNotFoundError: 没有名为“test.pageObj”的模块

我错过了什么?

4 个答案:

答案 0 :(得分:1)

试试:

from pageObj.LoginPage import LoginActivity
from pageObj.HomePage import HomeActivity

答案 1 :(得分:1)

你能不能试试下面的代码,看看它是否有效?

从 pageObj.LoginPage 导入 LoginActivity

从 pageObj.HomePage 导入 HomeActivity

答案 2 :(得分:1)

  1. __ init __.py in pageObj
from .HomePage import HomeActivity
from .LoginPage import LoginActivity
  1. AppiumTest.py
from test.pageObj import HomePage
from test.pageObj import LoginPage
  1. 打包和 __ init __
<块引用>

Python 定义了两种类型的包,常规包和命名空间包。常规包是传统包,因为它们存在于 Python 3.2 及更早版本中。常规包通常实现为包含 init.py 文件的目录。导入常规包时,会隐式执行此 init.py 文件,并且它定义的对象绑定到包命名空间中的名称。 init.py 文件可以包含任何其他模块可以包含的相同 Python 代码,并且 Python 会在导入模块时为该模块添加一些额外的属性。

答案 3 :(得分:1)

您不需要在导入语句中包含父目录。 from pageobj import LoginActivity 应该可以工作。