Maison >développement back-end >Tutoriel Python >Quels sont les types de données immuables en Python ?

Quels sont les types de données immuables en Python ?

anonymity
anonymityoriginal
2019-06-11 11:16:2918420parcourir

Quels sont les types de données immuables en python ?

Quels sont les types de données immuables en Python ?

Il existe trois types de données immuables en Python, à savoir les entiers, les chaînes et les tuples.

Entier

a = 1
print(id(a),type(a))
a = 2
print(id(a),type(a))
1912499232 <class &#39;int&#39;>
1912499264 <class &#39;int&#39;>

Nous pouvons constater que lorsque les données changent, l'adresse mémoire de la variable change, alors l'entier est un type de données immuable.

String

b = &#39;djx&#39;
print(id(b),type(b))
b = &#39;djx1996&#39;
print(id(b),type(b))
535056476344 <class &#39;str&#39;>
535056476624 <class &#39;str&#39;>

Nous pouvons constater que lorsque les données changent, l'adresse mémoire de la variable change, alors la chaîne est un type de données immuable.

Tuple

Tuple est appelé une liste en lecture seule, c'est-à-dire que les données peuvent être interrogées mais ne peuvent pas être modifiées, mais nous pouvons les stocker dans les éléments de le tuple Une liste qui vérifie si un tuple est mutable ou immuable en modifiant la valeur de la liste.

c1 = [&#39;1&#39;,&#39;2&#39;]
c = (1,2,c1)
print(c,id(c),type(c))
c1[1] = &#39;djx&#39;
print(c,id(c),type(c))
result:
(1, 2, [&#39;1&#39;, &#39;2&#39;]) 386030735432 <class &#39;tuple&#39;>
(1, 2, [&#39;1&#39;, &#39;djx&#39;]) 386030735432 <class &#39;tuple&#39;>

Nous pouvons constater que bien que les données du tuple aient changé, l'adresse mémoire n'a pas changé, mais nous ne pouvons pas l'utiliser pour déterminer que le tuple est un type de données variable. Si nous y réfléchissons attentivement, la définition d’un tuple est immuable. Nous avons modifié la valeur de la liste dans le tuple, mais comme la liste est un type de données variable, bien que la valeur ait été modifiée dans la liste, l'adresse de la liste n'a pas changé et la valeur de l'adresse de la liste dans le le tuple n'a pas changé, cela signifie donc que le tuple n'a pas changé. Nous pouvons considérer les tuples comme des types de données immuables car les tuples sont immuables.

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!

Déclaration:
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