Pourquoi les objets intégrés mutables ne peuvent-ils pas être transformés en Python ? Quel est l'avantage de cela ?
6 mai 2019
·
1 min. de lecture
Article initialement publié sur Quora
qu’appelez-vous “transformés” ? Vous voulez dire modifiés comme
a=(1,'truc',true) # tuple
a[1]='machin' # erreur
? Alors vous voulez plutôt dire immuable (immutable en anglais).
Un objet immutable permet de garantir la cohérence des données qu’il contient en obligeant à les manipuler comme un tout. Ca peut être utile en programmation multi-thread par exemple : chaque thread est sure que l’objet partagé n’est pas en train d’être modifié par une autre thread.
Un autre avantage est que le hash d’un objet immuable est constant, ce qui permet la recherche très rapide d’un tel objet dans un set ou un dict. C’est pourquoi les clés de dict doivent être de type immuable
Langages-De-Programmation
Objet
Immuable
Constructeur-Programmation-Orientee-Objet
Objets-Inconnus
Python-Langage-De-Programmation
Objets-Fragiles
Programmation-Orientee-Objet
Programmation-en-Python
Langage-De-Programmation

Auteurs
Dr. Goulu
(il/lui)
Ingénieur à la retraite, toujours curieux et voyageur
EPFL MS Informatique 1988, PhD automatique 1994, eMBA Management of Technology
Sur le même sujet
- Est-il possible de créer des méthodes statiques en Python et de les appeler sans initialiser une classe, comme par exemple : ClassName.StaticMethod ()?
- Quels sont les différents types d'arguments que vous pouvez utiliser pour définir une fonction Python ?
- Quelle est la fonctionnalité la plus intéressante du langage de programmation Python ?
- Qu'est-ce qu'une classe en Python ?
- Pourquoi cette popularité de Python en si peu d'années ?
