Jaki jest właściwy sposób naprawienia tego błędu ImportError?
Mam następującą strukturę katalogów:
/home/bodacydo
/home/bodacydo/work
/home/bodacydo/work/project
/home/bodacydo/work/project/programs
/home/bodacydo/work/project/foo
Jestem w katalogu
/home/bodacydo/work/project
Teraz, jeśli napiszę
python ./programs/my_python_program.py
Natychmiast rozumiem
ImportError: No module named foo.tasks
./programs/my_python_program.pyZawiera następujący wiersz:
from foo.tasks import my_function
Nie mogę zrozumieć, dlaczego Python nie znajdzie ./foo/tasks.py- jest.
Jeśli zrobię to z powłoki Pythona, to działa:
python
>>> from foo.tasks import my_function
Nie działa tylko wtedy, gdy wywołuję to za pomocą python ./programs/my_python_program.pyskryptu.