Différences entre Python Tuple et List
Python Tuple vs List est la structure de données la plus utilisée en Python. Ils stockent une collection d'éléments, soit des objets, soit des valeurs dans une séquence spécifiée. Ils peuvent stocker des éléments de n'importe quel type de données et cet élément est accessible à l'aide de son index. Ce sont les similitudes dans les listes et les tuples, mais quelle est la différence?
La différence est qu'un tuple est immuable. Cela signifie qu'il ne peut pas être altéré, changé ou manipulé. Un tuple est généralement utilisé précisément pour cette propriété. L'une des nombreuses utilisations des tuples Python est le décompression de séquence, où nous stockons les données renvoyées dans quelques variables spécifiées. Regardons cet exemple pour un tuple:
test def ()
retour 1, 2
a, b = test ()
imprimer (a, b)
Ici, nous avons utilisé un tuple pour renvoyer la valeur de la fonction, et donc lors de l'impression de la valeur, nous ne pouvons pas la modifier.
Un tuple Python ne peut pas avoir de crochets autour de lui ou des parenthèses comme «()» C'est ce qui aide Python à comprendre une liste à partir d'un tuple. La liste Python est définie par des crochets. Sa fonctionnalité est similaire à la façon dont un tableau fonctionne dans d'autres langues. Exemple:
x = (1, 3, 5, 6, 2, 1, 6) print (x): Imprime la liste complète
print (x (0), x (1)): imprime la liste à partir de l'index 0
Souvent confondues en raison de leurs ressemblances, ces deux structures sont sensiblement différentes.
Comparaison directe entre Tuple Python et liste (infographie)
Vous trouverez ci-dessous la liste des 6 meilleurs comparaisons de tuple Python et de liste
Différences clés entre Python Tuple et List
Voici les listes de points, décrivez les principales différences entre Python Tuple vs List:
Fonctionnalité des opérations
Les listes ont une fonction intégrée supplémentaire par rapport aux tuples. Les listes et les tuples ont en commun les méthodes index () et count (), mais à part celles-ci, les listes ont de nombreuses fonctions qui ne s'appliquent spécifiquement qu'aux listes comme append (), remove (), clear (), sort (), reverse ( ), etc.
Nous pouvons utiliser la fonction intégrée dir ((objet)) pour trouver toutes les fonctions associées aux listes et aux tuples. Le résultat d'une telle commande serait le suivant:
Objet de liste:
('__ajouter__','__classe__',
«__contains__»,
«__delattr__»,
«__delitem__»,
«__dir__»,
«__doc__»,
«__eq__»,
'__format__',
«__ge__»,
«__getattribute__»,
'__obtenir l'article__',
«__gt__»,
'__hacher__',
'__J'ajoute__',
«__imul__»,
«__init__»,
«__init_subclass__»,
«__iter__»,
«__le__»,
«__len__»,
«__lt__»,
«__mul__»,
«__ne__»,
'__Nouveau__',
'__réduire__',
«__reduce_ex__»,
«__repr__»,
'__renversé__',
«__rmul__»,
«__setattr__»,
«__setitem__»,
'__taille de__',
«__str__»,
«__subclasshook__»,
'ajouter',
'clair',
'copie',
'compter',
'étendre',
'indice',
'insérer',
'pop',
'retirer',
'sens inverse',
'Trier')
Objet Tuple:
('__ajouter__','__classe__',
«__contains__»,
«__delattr__»,
«__dir__»,
«__doc__»,
«__eq__»,
'__format__',
«__ge__»,
«__getattribute__»,
'__obtenir l'article__',
«__getnewargs__»,
«__gt__»,
'__hacher__',
«__init__»,
«__init_subclass__»,
«__iter__»,
«__le__»,
«__len__»,
«__lt__»,
«__mul__»,
«__ne__»,
'__Nouveau__',
'__réduire__',
«__reduce_ex__»,
«__repr__»,
«__rmul__»,
«__setattr__»,
'__taille de__',
«__str__»,
«__subclasshook__»,
'compter',
'indice')
Nous pouvons voir qu'il existe des fonctionnalités supplémentaires liées à une liste que pour un tuple.
Évaluation de la taille
Les opérations de tuple ont une taille plus petite que celle des opérations de liste. Cela rend les opérations plus rapides lorsqu'il y a un nombre énorme d'éléments. Voyons un exemple pour calculer la taille des éléments de liste et de tuple.
x = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
y = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
print ('x =', x .__ sizeof __ ())
print ('y =', y .__ sizeof __ ())
Production:
x = 104
y = 120
Dans cet exemple, nous avons un tuple x et une liste y contenant le même nombre d'éléments, mais la taille du tuple est inférieure à celle de la liste.
Différents cas d'utilisation
Au départ, il peut sembler que les listes pourront toujours remplacer les tuples, mais ce n'est pas le cas. Nous pouvons comprendre cela pour les raisons suivantes:
- Lorsqu'un tuple est utilisé par opposition à une liste, cela donne au spectateur une idée que les données présentes peuvent et ne doivent pas être modifiées.
- Les tuples sont fréquemment utilisés pour stocker des données comme l'égal d'un dictionnaire sans clés.
Exemple:
(('Employé1', 1000), ('Employé2', 1001), ('Employé3', 1002))Les tuples peuvent également être utilisés comme clés dans les dictionnaires en raison de leur nature hachable et immuable. Les listes ne sont pas appropriées pour cela car elles ne peuvent pas gérer la fonction __hash __ () et sont de nature mutable.
key_value = (('a', 'b'): 1) #Valid
key_value = (('a', 'b'): 1) #Invalid
- La lisibilité est augmentée, c'est-à-dire que la lecture des informations est plus facile lorsque les tuples sont stockés dans une liste, par opposition à lorsque les listes sont stockées dans une liste. Exemple:
Utilisation de tuples et de listes
Nous utilisons un tuple lorsque nous savons quelles informations doivent être fournies et que nous devons éviter que les valeurs soient modifiées, comme lorsque nous devons stocker des informations d'identification pour un site Web. Les tuples sont également utilisés comme clés pour un dictionnaire car seules les valeurs immuables peuvent être hachées. Par conséquent, nous ne pouvons pas utiliser une liste dans de tels cas. Si nous voulons toujours utiliser une liste comme clé, nous devons d'abord convertir la liste en tuple.
Et d'autre part, nous pouvons utiliser une liste, lorsque nous voulons modifier les valeurs données dans la collection, et aussi lorsque nous ne savons pas si la taille de notre collection est fixe.
Tableau comparatif Tuples Python vs listes
Ci-dessous, la comparaison la plus élevée entre les tuples Python et les listes
traits | Listes |
Tuples |
Syntaxe | Les listes sont définies par des crochets (). | Les tuples sont définis par des parenthèses () ou sans parenthèses. |
Mutable vs immuable | La liste est de nature mutable, c'est-à-dire qu'elle peut être modifiée ou modifiée après sa création. | Un tuple est de nature immuable, c'est-à-dire qu'il ne peut pas être altéré ou changé après sa création. |
Opérations disponibles | Les fonctions intégrées dans la liste sont plus comparées à celles du tuple, par exemple pop (), insert (), etc. | Tuple a moins de fonctions intégrées. |
Comparaison de taille | Les opérations de liste sont plus volumineuses par rapport aux opérations de tuple. | Les opérations de tuple sont plus petites, ce qui la rend plus rapide avec de nombreux éléments. |
Longueur | Les listes ont une longueur variable. | Les tuples ont des longueurs fixes. Nous ne pouvons pas modifier la taille d'un tuple existant. |
Duplicité | Les listes peuvent être copiées | Les tuples ne peuvent pas être copiés. |
Conclusion
Il s'agit de Tuples Python vs Listes. Alors maintenant que nous avons compris les différences entre les tuples et les listes python, il nous sera plus facile de décider lequel des deux doit être utilisé et où. Par conséquent, nous pouvons conclure que bien que les listes et les tuples soient des structures de données importantes en Python, il existe des différences notables entre eux, la principale différence étant que les listes sont mutables alors que les tuples ne le sont pas.
Article recommandé
Cela a été un guide pour la différence entre python Tuple vs List. Ici, nous discutons également des différences clés entre Tuple vs List python avec des infographies et un tableau de comparaison. Vous pouvez également consulter les articles suivants pour en savoir plus-
- Agile vs Waterfall - Principales différences
- Digital Ocean vs AWS
- Test de fumée vs test de santé mentale
- Comment installer Python
- Types de compilateurs Python
- Différentes opérations liées aux tuples
- Compréhension de la liste Python
- Qu'est-ce que le test d'intégrité et comment cela fonctionne-t-il?