Python import module error

2019-07-28 22:30发布

问题:

I have a problem in import of modules in my project. I was creating tests and I cant import my main to test one end point of my application, from the test file teste_ex.py. This is my project structure:

backend_api/
    api/
        __init__.py
        main.py
    testes/
        __init__.py
        test_ex.py

In my test_ex.py Im trying to import main in this way:

import api.main
from webtest import TestApp

def test_functional_concursos_api():
    app = TestApp(main.app)
    assert app.get('/hello').status == '200 OK'

I omly get ImportError: No module named 'api'

  • What can be done to import my main to my test file?

回答1:

Here's my best guess as to what might help:

You should make sure that the path to the directory in which your main.py file resides can be found in sys.path. You can check this yourself by running this snippet in test_ex.py:

import sys

for line in sys.path:
    print line

If the directory in which main.py is found is not included in your path, you can append that path to sys.path, like this (include this snippet in test_ex.py):

import sys
sys.path.append("/path/to/your/module/backendapi/api/")


标签: python import