python ImportError: нет модуля с именем простых чисел - PullRequest
0 голосов
/ 01 марта 2010

Я действительно новичок в Python. Я пытаюсь импортировать сторонний модуль primes.py. Я поместил этот модуль в C: \ Python26 \ Lib (место, где я установил Python). Затем у меня есть другой файл, который пытается импортировать этот модуль. Файл, пытающийся импортировать простые числа, находится в C: \ Python26.

В моем файле Python есть следующие две строки:

import primes
import sys

Когда я запускаю этот файл, я получаю следующую ошибку:

ImportError: No module named primes

Кто-нибудь может мне помочь?

Ответы [ 3 ]

2 голосов
/ 01 марта 2010

Модуль должен находиться на вашей PYTHONPATH или в том же каталоге, что и скрипт, приложение или модуль, который пытается импортировать модуль.

Я не программист Windows, но если вы поместили модуль в «C: \ Python26 \ Lib», и ваш путь установлен в «C: \ Python26», вам нужно добавить «\ Python26 \ Lib» к вашему PYTHONPATH. Я не уверен, какой будет синтаксис, но это должно быть что-то вроде 'C: \ Python26; C: \ Python26 \ Lib'. При условии, что в Windows все одинаково, подкаталоги не ищутся автоматически.

Я думаю, что более подходящим местом для размещения модуля является размещение его в «пакетах сайтов», я не знаю, как это делается в Windows. В системах * nix есть скрипт «setup.py», который поставляется с пакетом / модулем и использует «setuptools» для сборки и установки пакета / модуля.

1 голос
/ 01 марта 2010

вы, вероятно, должны расположить его в site-packages каталоге или в личной папке. Проверьте sys.path, чтобы понять ваши import пути.

0 голосов
/ 01 марта 2010

Поместите primes.py в каталог lib/site-packages/.

Также: нет необходимости помещать свои собственные файлы Python в каталог установки: я бы посоветовал вам поместить их в другое место (где это имеет смысл).

...