Maison > développement back-end > Tutoriel Python > Variables Python : pointeurs ou références ?

Variables Python : pointeurs ou références ?

Patricia Arquette
Libérer: 2024-12-29 13:49:10
original
855 Les gens l'ont consulté

Python Variables: Pointers or References?

Repenser les variables Python : pointeurs ou références ?

Dans le monde de la programmation Python, les variables ont souvent été décrites comme des « pointeurs ». Cependant, cela soulève des questions sur le comportement de ces variables. Considérez les extraits de code suivants :

i = 5
j = i
j = 3
print(i)
Copier après la connexion

Sur la base de l'hypothèse du "pointeur", on pourrait s'attendre à ce que j'aie une valeur de 3 après l'exécution du code. Cependant, le résultat réel est 5.

Que se passe-t-il ?

Comprendre les références Python

En Python, les variables n'agissent pas comme des pointeurs. Au lieu de cela, ils fonctionnent comme des références. Une référence connecte une variable à un objet. Lorsque vous affectez une variable à une autre variable, vous créez une référence au même objet.

Cela signifie que dans le premier extrait de code, i et j sont des références au même objet entier (int(5)) . Lorsque la valeur de j est modifiée en 3, un nouvel objet entier (int(3)) est créé et j devient une référence à celui-ci. Cependant, i reste une référence à l'objet entier d'origine int(5).

Le deuxième extrait de code illustre ce comportement avec une liste :

i = [1,2,3]
j = i
i[0] = 5
print(j)
Copier après la connexion

Dans ce cas, i et j sont les deux références au même objet de liste. Lorsque i[0] est modifié, l'objet liste lui-même est modifié, donc i et j font toujours référence à la même liste.

Conclusion

Les variables Python ne sont pas des pointeurs , mais plutôt des références. Ils établissent des connexions avec des objets et lorsque la valeur d'une variable est modifiée, cela affecte l'objet lui-même. Cela explique les résultats inattendus observés dans les extraits de code et constitue un concept fondamental pour comprendre le comportement des variables de Python.

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal