Попробуйте с PyGreSQL :
PyGreSQL - это модуль Python, который взаимодействует с базой данных PostgreSQL.В него встроена библиотека запросов PostgreSQL, позволяющая легко использовать мощные функции PostgreSQL из скрипта Python.
Текущая версия PyGreSQL 4.0 требует PostgreSQL 7.2 и Python 2.3 или выше.
EDIT:
Я провел некоторое тестирование на PostgreSQL 7.3 (скомпилировано из source в Debian Squeeze), и я вижу, что оно работает хорошо.Я изменил только одно свойство в postgresql.conf, чтобы локальные соединения работали хорошо в Python:
unix_socket_directory = '/var/run/postgresql'
После этого с помощью пакета python-pygresql (версия 4.0.2):
import pg
con1 = pg.connect('postgres', None, 5440, None, None, 'postgres', None)
con1.query('SELECT version()')
version
--------------------------------------------------------------------------------
PostgreSQL 7.3.21 on i686-pc-linux-gnu, compiled by GCC gcc (Debian 4.4.5-8) 4.4
(1 row)
con1.query('SELECT width, height FROM box')
width|height
-----+------
10 |15
18 |25
(2 rows)