Maison >développement back-end >Tutoriel Python >Python propose-t-il un ensemble ordonné natif et comment peut-on l'émuler ?
Explorer les ensembles ordonnés en Python
Python propose un dictionnaire ordonné, mais fournit-il un ensemble ordonné ? Examinons cette requête et découvrons les solutions potentielles disponibles en Python.
L'absence d'ensembles ordonnés
Contrairement aux dictionnaires ordonnés, Python ne prend pas en charge nativement les ensembles ordonnés. Cependant, l'introduction d'ensembles ordonnés peut être une fonctionnalité bénéfique pour maintenir l'ordre des éléments tout en éliminant les doublons.
Émulation d'ensembles ordonnés avec des dictionnaires
À partir de Python 3.7, un simple Le dictionnaire peut être utilisé comme un ensemble ordonné en utilisant la méthode de classe dict fromkeys(). Cette méthode n'utilise que des clés (en définissant les valeurs sur Aucune), émulant efficacement les fonctionnalités d'un ensemble ordonné.
Exemple d'utilisation
Pour présenter l'utilisation, considérez une liste de mots-clés : [ 'foo', 'bar', 'bar', 'foo', 'baz', 'foo']. Pour filtrer les doublons tout en préservant l'ordre, utilisez simplement la méthode fromkeys() et récupérez les clés().
>>> keywords = ['foo', 'bar', 'bar', 'foo', 'baz', 'foo'] >>> list(dict.fromkeys(keywords)) ['foo', 'bar', 'baz']
Alternative pour les anciennes versions de Python
Pour les anciennes Versions Python, la classe collections.OrderedDict peut servir d'ensemble ordonné. Il offre des fonctionnalités similaires à l'émulation d'ensembles ordonnés avec des dictionnaires.
En conclusion, bien que Python n'offre pas d'ensembles ordonnés natifs, une utilisation intelligente des dictionnaires et des collections. La classe OrderedDict peut accomplir efficacement la même tâche, permettant aux développeurs de gérer ensembles ordonnés dans leur code 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!