LINUX.ORG.RU
Ответ на: комментарий от watashiwa_daredeska

К сожалению, я работаю на машине фирмы и Линукс мне ставить не разрешают. Поэтому использую 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 не указано.

спасибо.

KRT
() автор топика
Ответ на: комментарий от KRT

В предыдущем посте опечатка, извините следует читать:

import pgdb

KRT
() автор топика
Ответ на: комментарий от KRT

Варианты:
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 - он более для этого предназначен и тоже есть в стандартных путях.

watashiwa_daredeska ★★★★
()
Ответ на: комментарий от watashiwa_daredeska

Спасибо. Cегодня попробую все любезно предложенные вами варианты и еще попробую поставить Python 2.2 и обратиться из нее.

Postgres просто уже есть, настроен и работает, менять не хочется.

В каталоге C:\Program Files\PostgreSQL\lib\python2.2\site-packages файлы :

_pgmodule.dll, pg.py, pg.py.

KRT
() автор топика
Ответ на: комментарий от KRT

А у Вас Postgres виндовый или через cygwin работает?
А то может, тот модуль, что в C:\Program Files\PostgreSQL\lib\python2.2\site-packages
требует cygwin'а для запуска.

anonymous
()
Ответ на: комментарий от KRT

dll? Странно. Обычно DLL-модули python имеют расширение pyd.

P.S.S. В Win версии Python DLL'ки по-моему в какой-то другой каталог сваливаются <Python>\DLL или <Python>\Libs, не помню.

P.S. А в документации раздел установки (после компиляции) очень часто можно читать одинаково для Linux и Windows с точностью до замены каталогов.

watashiwa_daredeska ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.