简体   繁体   中英

Import Error Python 2.7. No module named:

I'm receiving an ImportError when running my main script which is related to another script trying to import one of my modules and I'm unsure how to fix it. The layout of the files in relation to the software is as follows (folder names etc are fictional):

poetry_generator/main.py

poetry_generator/architecture/experts/poetryexperts/sentence.py

poetry_generator/structures/word.py

Main.py is what I'm running, and the problem seems to arise from sentence.py trying to import word module and failing.

Currently in sentence.py I have:

from poetry_generator.structures.word import Word

Word is the name of the Class in word.py: Class Word(object). But I'm receiving the following error: ImportError: No module named poetry_generator.structures.word

Does anyone have any idea what is wrong? I have been readinga roudn similar questions already asked but nothing has worked so far. Thanks in advance for any help.

Full console text reagarding error:

Traceback (most recent call last):
  File "main.py", line 1, in <module>
    from architecture.control_component import ControlComponent
  File "/home/lee/Downloads/PoEmo-master/poetry_generator/architecture/control_component.py", line 4, in <module>
    from experts.poem_making_experts import exclamation_expert
  File "/home/lee/Downloads/PoEmo-master/poetry_generator/architecture/experts/poem_making_experts/exclamation_expert.py", line 5, in <module>
    from poetry_generator.structures.word import Word
ImportError: No module named poetry_generator.structures.word

The top-level project directory shouldn't be included in the module name. This should work:

from structures.word import Word

You will need

import sys
sys.path.insert(0, 'System/structures/word')
#or
sys.path.append('System/structures/word')

import Word

Otherwise you will need __init__.py that you can make with these instructions .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM