Maison > développement back-end > Tutoriel Python > Python prend-il en charge les caractères ?

Python prend-il en charge les caractères ?

爱喝马黛茶的安东尼
Libérer: 2019-06-19 17:46:55
original
6682 Les gens l'ont consulté

Le troisième Zen de Python
Le simple vaut mieux que le complexe.
En Python, chaque caractère d'une chaîne occupe 8 bits d'espace.

Python prend-il en charge les caractères ?

>>> import sys
>>> sys.getsizeof('')
37
>>> sys.getsizeof('a')
38
Copier après la connexion

Comme vous pouvez le voir, le caractère nul occupe 37 octets, et la chaîne 'a' d'une longueur de 1 occupe 38 octets de mémoire. un caractère de plus a Ensuite, il y a 1 octet de plus.

Recommandations associées : "Tutoriel vidéo Python"

Chaque caractère est stocké dans ob_sval, représentant une taille de 8 bits. Les 36 octets restants proviennent principalement. Macro PyObject_VAR_HEAD. En fait, l'implémentation de chaîne de Python utilise également une variable globale appelée *interned, qui peut stocker des chaînes d'une longueur de 0 ou 1, c'est-à-dire char, ce qui peut économiser de l'espace et accélérer.

En fait, il n'y a ni pointeurs ni "structures de données nues" (non-objets) en Python, même l'entier le plus simple, entier, est implémenté de cette façon.

En bref, cette conception satisfait la philosophie de conception de Python selon laquelle « tout est un objet » et « tout est aussi simple que possible ».

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal