requête de postgresql en utilisant python comme dictionnaire
J'utilise Python 2.7 et postgresql 9.1.
Essayant d'obtenir un dictionnaire à partir d'une requête, j'ai essayé le code comme décrit ici:
http://wiki.postgresql.org/wiki/Using_psycopg2_with_PostgreSQL
import psycopg2
import psycopg2.extras
conn = psycopg2.connect("dbname=mydb host=localhost user=user password=password")
cur = conn.cursor(cursor_factory=psycopg2.extras.DictCursor)
cur.execute ("select * from port")
type(cur.fetchall())
C'est l'impression de la réponse suivante:
<type 'list'>
l'impression de l'élément lui-même, de me montrer qu'il est la liste.
L'exception de réponse a été de dictionnaire.
Edit:
Essayer la prochaine:
ans = cur.fetchall()[0]
print ans
print type(ans)
retourne
[288, 'T', 51, 1, 1, '192.168.39.188']
<type 'list'>
source d'informationauteur Guy Dafny
Vous devez vous connecter pour publier un commentaire.
C'est normal: lorsque vous appelez .méthode fetchall() retourne la liste de tuples. Mais si vous écrivez
il sera de retour un seul tuple de type:
Après cela, vous pouvez l'utiliser comme une liste ou comme un dictionnaire:
Vous pouvez également utiliser simple curseur itérateur:
Tnx beaucoup Andrey Chokhine ,
réponse est:
Peut-être pour optimiser elle a, de plus nous pouvons avoir