Не удается импортировать модуль Python даже после sys.path.append

Работа на кластере с CENTOS и Python 2.6.6

Попытка добавить модули в функцию Python

Функция some_func.py выглядит так:

#!/usr/bin/env python
from __future__ import division
import sys

sys.path.append('/Users/username/modules')
import some_module as sm

В /Users/username/modules у меня есть два файла:__init__.py и some_module.py

Он работает, когда я делаю это на моем Mac, но не работает, когда я запускаю его на машине CENOS.

Я получаю ошибку: Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named some_module

Есть идеи, что может происходить?

1 ответ

Добавление /Users/username/modules на ваш путь, а затем пытается импортировать some_module означает, что Python на самом деле ищет каталог с именем /Users/username/modules/some_module, который будет содержать (как минимум) файл с именем __init__.py,

Я не знаю, почему это сработало на вашем компьютере Mac. Возможно, у вас есть еще одна копия some_module валяется в другом месте и находит эту копию?

Попробуйте это на своем Mac:

import some_module
print (some_module.__file__)

И посмотрите, что он сообщает в качестве полного пути.

Другие вопросы по тегам