为什么导入无法在Pycharm中拉入类?

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

我跟随这个例子:https://www.jetbrains.com/help/pycharm/pytest.html

我在src / project下创建了两个类:Car.py和test_car_pytest.py:

class Car(object):
    def __init__(self, speed=0):
        self.speed = speed
        self.odometer = 0
        self.time = 0
   ...

然后在test_car_pytest.py中:

from Car import Car

def test_car_brake():
    car = Car(50)
    assert car.speed == 45

在PyCharm中,import语句显示'Car'是一个未解析的引用。当我试图运行它时,我收到以下错误:

============================= test session starts ==============================
platform darwin -- Python 3.6.8, pytest-4.2.0, py-1.7.0, pluggy-0.8.1
rootdir: /Users/minn/PycharmProjects/test/src, inifile:
test_car_pytest.py:None (test_car_pytest.py)
ImportError while importing test module '/Users/minn/PycharmProjects/test/src/test_car_pytest.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
test_car_pytest.py:1: in <module>
    from Car import Car
E   ModuleNotFoundError: No module named 'Car'

当我单独执行Car.py时,它会正常运行。这两个文件在同一目录下,为什么导入失败?

pycharm
1个回答
2
投票

由于您使用的是Python 3,因此需要进行相对导入。将您的import语句更改为以下内容:

from .Car import Car
© www.soinside.com 2019 - 2024. All rights reserved.