Vous pouvez convertir une liste en un ensemble en Python.
Crédit d'image : Poike/iStock/GettyImages
Les listes et les ensembles en Python contiennent tous deux des groupes d'éléments, mais il existe des différences importantes entre les deux. En particulier, les ensembles sont utiles pour effectuer un large éventail d'opérations telles que les unions et les intersections, tandis que les listes ont moins d'opérations mathématiques mais sont utiles pour rechercher des éléments spécifiques - en particulier avec des doublons - et organiser Les données. Pour de nombreuses raisons, vous devrez peut-être convertir une liste en un ensemble en Python, et il existe une fonction simple que vous pouvez utiliser pour le faire.
Listes et ensembles Python expliqués
La différence la plus importante entre une liste et un ensemble en Python est qu'une liste peut contenir des éléments en double, alors qu'un ensemble ne contient que des éléments uniques. Par exemple, si vous avez une liste de scores de tests définis comme "scores=[14, 20, 13, 20, 15]", la liste vous indique chaque valeur, mais si vous le convertissez en un ensemble, il supprime le doublon et laisse {14, 20, 13, 15}.
Vidéo du jour
Une autre différence est que les crochets sont utilisés pour les listes, tandis que les accolades sont utilisées pour les ensembles. Les choses sont un peu compliquées par le fait qu'un dictionnaire Python utilise également des accolades, mais là, chaque élément se compose de la valeur elle-même et d'une "clé" séparée par deux points.
Il est important de se rappeler que vous pouvez utiliser des chaînes, des entiers, des flottants ou d'autres objets dans le cadre d'un ensemble ou d'une liste, et ceux-ci peuvent également être mélangés dans le même ensemble ou liste. Ainsi, tout comme vous pouvez avoir un ensemble de nombres en Python, vous pouvez également construire un ensemble de chaînes Python.
Convertir une liste en un ensemble
Le processus de conversion d'une liste en un ensemble en Python est simple. Tout d'abord, vous définissez la liste d'une manière qui a du sens pour les informations qu'elle contient. Par exemple, supposons que vous vouliez définir une liste de noms, vous pourriez écrire names=['Lee', 'Mike', 'Jamie', 'Mike', 'Sarah'] en notant les crochets, les guillemets autour des chaînes (les noms) et les virgules séparant chaque entrée.
Pour convertir cette liste en un ensemble, vous utilisez la commande ensemble(), où vous mettez le nom de la liste que vous souhaitez convertir entre parenthèses. Donc, dans ce cas, vous pouvez écrire définir (noms) pour convertir les noms de la liste en un ensemble, et vous pouvez lui affecter une variable telle que "uniquenames" et afficher le résultat en utilisant imprimer (noms uniques), qui est fonctionnellement équivalent à imprimer (définir (noms)) mais plus propre. Vous confirmez que cela a été fait correctement en notant que le résultat utilise des accolades et que "Mike" n'est inclus qu'une seule fois.
L'ensemble du code ressemble à ceci :
names=['Lee', 'Mike','Jamie','Mike','Sarah']
uniquenames=set (noms)
print('Noms uniques: ', noms uniques)
Dans ce cas, « Noms uniques: » a été ajouté à la sortie à des fins de présentation.
Python: Définir sur la conversion de liste
Vous pouvez également exécuter la même conversion dans la direction opposée, et le processus est fondamentalement le même, sauf que vous utilisez le liste() commande sur un plateau plutôt que l'inverse. Cela signifie que vous avez besoin d'un ensemble pour commencer, que vous pouvez définir facilement en choisissant une variable telle que "big_set", puis en ajoutant le contenu, séparé par des virgules et entre accolades. Tu pourrais écrire big_set={1, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 17} pour définir un ensemble d'entiers ou toute autre valeur.
Pour convertir cela en une liste, vous définissez une variable (disons, "big_list") et utilisez le liste() commande, donc vous tapez quelque chose comme grande_liste=liste (grand_ensemble) puis imprimer (big_list) pour afficher le résultat. Le code complet est donc :
big_set={1, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 17}
grande_liste=liste (grand_ensemble)
imprimer (big_list)
Ce cas ne donne pas de nom à la liste, il ne renvoie donc que la liste. Notez que si vous convertissez une liste en un ensemble, puis de nouveau, vous perdez toutes les valeurs répétées lors de la première conversion et elles ne reviennent pas.