Quelle est la longueur maximale d'une chaîne python?
Si c'est de l'environnement, quel est le nombre maximal théorique de caractères dans une chaîne python?
Aussi, si elle diffère avec le numéro de version, je voudrais savoir pour python 2.5.2
Vous devez vous connecter pour publier un commentaire.
Avec une version 64 bits d'installation de Python, et (disons) de 64 GO de mémoire, un Python 2 chaîne d'environ 63 GO devrait être tout à fait faisable (si ce n'est au maximum rapide). Si vous pouvez mettre à niveau votre mémoire bien au-delà (ce qui vous coûtera un bras et une jambe, bien sûr), votre maximum possible les chaînes doivent obtenir proportionnellement plus. (Je ne recommande pas en s'appuyant sur la mémoire virtuelle pour étendre que par beaucoup, ou de votre temps de fonctionnement obtiendrez tout simplement ridicule;-).
Typique de 32 bits installation de Python, bien sûr, la quantité totale de mémoire que vous pouvez utiliser dans votre application est limitée à quelque chose comme 2 ou 3 GO (en fonction de l'OS et de la configuration), de sorte que la plus longue chaîne de caractères que vous pouvez utiliser sera beaucoup plus petite que dans les installations 64 bits avec ridiculement grandes quantités de RAM.
J'ai couru ce code sur une instance EC2.
et c'est la sortie
erreur de mémoire après 116 GO.
Testé sur EC2 r3.4xlarge instance en cours d'exécution 64 bits AMI Amazon Linux 2016.09
Bref, la réponse devrait être: si vous avez plus de 100 GO de RAM, un Python chaîne peut utiliser beaucoup de mémoire.
malloc
qui utilisesize_t
qui est 18 446 744 Téraoctets sur les systèmes 64 bits.