К сожалению, я работаю на машине фирмы и Линукс мне ставить не разрешают. Поэтому использую Python 2.3.4 под win32.
Вы уже давали раньше в этом форуме подробный ответ, где смотреть и что прописывать, когда у кого-то не импортился math.
У меня ситуация такая - модули, входящие в дистрибутив импортятся, собственные модули, расположенные в одном каталоге с новым сценарием то же.
Мне нужно выполнить соединение с PostGresql 7.3.1 который установлен, на той же машине, настроен и из консоли работает успешно.
В этом же форуме уже были топики, где такой коннект рассматривался, но вряд ли у кого-то здесь была необходимость работать под win.
Нужно выполнить import pg
pg входит в дистрибутив PostGresql 7.3.1 и при его инсталляции помещается в C:\Program Files\PostgreSQL\lib\python2.2\site-packages.
Как к нему обратиться для импорта?
Второй вариант, наверное, разместить модуль в C:\Python23\Lib и где-то прописать пути? К сожалению, есть подробная документация как собрать из исходников (понятно не под win) на сайте авторов модуля, но как поступить под win не указано.
Варианты:
1. То что в C:\Program Files\PostgreSQL\lib\python2.2\site-packages скопировать в C:\Python23\Lib\site-packages.
2. Устанавливать переменную среды PYTHONPATH=C:\Program Files\PostgreSQL\lib\python2.2\site-packages перед запуском скрипта, если возможно.
3. Добавлять путь к sys.path в C:\Python23\Lib\site.py - он исполняется при каждом запуске интерпретатора.
Что лежит в C:\Program Files\PostgreSQL\lib\python2.2\site-packages? dir можно?
Очень странно, что у PostgreSQL модули для 2.2, а используется Python 2.3. Бинарные модули весьма вероятно не заработают без пересборки. А пересборка возможно не заработает без напильника. Надо бы привести их в соответствие.
> разместить модуль в C:\Python23\Lib и где-то прописать пути?
Для C:\Python23\Lib пути уже есть. Но лучше размещать в C:\Python23\Lib\site-packages - он более для этого предназначен и тоже есть в стандартных путях.
А у Вас Postgres виндовый или через cygwin работает?
А то может, тот модуль, что в C:\Program Files\PostgreSQL\lib\python2.2\site-packages
требует cygwin'а для запуска.