2010-07-11 5 views
0

Je reçois une réponse dans le programme Python du serveur SQL. Quelle est la taille de cette réponse? Quel est le maximum? Est-ce que ça peut aller jusqu'à 100 mb?Quelle est la taille de la variable, en python?

+0

Quel module de base de données Python utilisez-vous? –

+0

D'abord, j'utilisais pymssql. que odbc. Et complètement je déside d'utiliser le service Web de savon. – Pol

+0

Technicité: notez que ce n'est pas une "variable"; Python n'en a pas, plus ou moins. Vous voulez la taille maximale d'un objet; ce que vous appelez "variables" sont des noms d'objets. – tzot

Répondre

5

Voir sys.maxsize: http://docs.python.org/library/sys.html

Le plus grand nombre entier positif soutenu par type Py_ssize_t de la plate-forme, et donc les listes de taille maximale, les chaînes, dicts, et bien d'autres conteneurs peuvent avoir.

Sur mon MacBook Pro avec une version 64 bits de CPython, il est tout à fait sensiblement 2 -1 octets:

>>> import sys 
>>> sys.maxsize 
9223372036854775807 
>>> 

Tout sur ma boîte Linux 32 bits, il est 2^-1:

>>> import sys 
>>> sys.maxsize 
2147483647 
>>> 

Dans la pratique, bien sûr, vous avez peu de chances de pouvoir effectivement faire usage d'objets ce grand, mais vous pouvez vous attendre à rencontrer de graves problèmes pratiques (comme, disons, être en dehors de la mémoire ou prendre une éternité pour charger/enregistrer des objets de stockage) avant d'atteindre les limites théoriques.

4

Il n'y a aucune raison pour laquelle vous ne pouvez pas stocker 100 Mo de données en Python, si la mémoire système le permet. Mais vous devriez essayer d'utiliser un itérateur, plutôt que de lire l'ensemble des résultats dans une liste.

Questions connexes