Aspirer à devenir un programmeur débutant certifié Python (PCEP) nécessite une compréhension approfondie des structures de données fondamentales en Python, telles que les listes et les tuples.
Les listes et les tuples sont capables de stocker des objets en Python, mais ces deux structures de données présentent des différences clés dans leur utilisation et leur syntaxe. Pour vous aider à réussir votre examen de certification PCEP, voici quelques conseils essentiels pour maîtriser ces structures de données.
1. Comprendre la distinction entre les listes et les tuples
Les listes en Python sont mutables, ce qui signifie qu'elles peuvent être modifiées après leur création. D'un autre côté, les tuples sont immuables, ce qui signifie qu'ils ne peuvent pas être modifiés une fois créés. Cela implique que les tuples nécessitent moins de mémoire et peuvent être plus rapides que les listes dans certaines situations, mais ils offrent moins de flexibilité.
Exemple de liste :
# creating a list of numbers numbers = [1, 2, 3, 4, 5] # modifying the list by changing the fourth element numbers[3] = 10 print(numbers) # output: [1, 2, 3, 10, 5]
Exemple de tuple :
# creating a tuple of colors colors = ("red", "green", "blue") # trying to modify the tuple by changing the second element colors[1] = "yellow" # this will result in an error as tuples are immutable
2. Familiarisez-vous avec la syntaxe des listes et des tuples
Les listes sont indiquées par des crochets [ ], tandis que les tuples sont placés entre parenthèses ( ). Créer une liste ou un tuple est aussi simple que de déclarer des valeurs à une variable en utilisant la syntaxe appropriée. N'oubliez pas que les tuples ne peuvent pas être modifiés après l'initialisation, il est donc crucial d'utiliser la syntaxe correcte.
Exemple de liste :
# creating a list of fruits fruits = ["apple", "banana", "orange"]
Exemple de tuple :
# creating a tuple of colors colors = ("red", "green", "blue")
3. Savoir comment ajouter et supprimer des éléments
Les listes disposent de diverses méthodes intégrées pour ajouter et supprimer des éléments, comme append(), extend() et remove(). Les tuples, en revanche, ont moins de méthodes intégrées et n'ont aucune méthode pour ajouter ou supprimer des éléments. Par conséquent, si vous devez modifier un tuple, vous devrez en créer un nouveau au lieu de modifier le tuple existant.
Exemple de liste :
# adding a new fruit to the end of the list fruits.append("mango") print(fruits) # output: ["apple", "banana", "orange", "mango"] # removing a fruit from the list fruits.remove("banana") print(fruits) # output: ["apple", "orange", "mango"]
Exemple de tuple :
# trying to add a fruit to the end of the tuple fruits.append("mango") # this will result in an error as tuples are immutable # trying to remove a fruit from the tuple fruits.remove("banana") # this will also result in an error
4. Comprendre les différences de performances
En raison de leur immuabilité, les tuples sont généralement plus rapides que les listes. Recherchez les scénarios dans lesquels vous devez stocker une collection fixe d'éléments et envisagez d'utiliser des tuples au lieu de listes pour améliorer les performances.
Vous pouvez tester les différences de performances entre les listes et les tuples à l'aide du module timeit en Python. Voici un exemple de comparaison du temps nécessaire pour parcourir une liste et un tuple de 10 éléments :
# importing the timeit module import timeit # creating a list and a tuple with 10 elements numbers_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] numbers_tuple = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) # testing the time it takes to iterate through the list list_time = timeit.timeit('for num in numbers_list: pass', globals=globals(), number=100000) print("Time taken for list: ", list_time) # output: Time taken for list: 0.01176179499915356 seconds # testing the time it takes to iterate through the tuple tuple_time = timeit.timeit('for num in numbers_tuple: pass', globals=globals(), number=100000) print("Time taken for tuple: ", tuple_time) # output: Time taken for tuple: 0.006707087000323646 seconds
Comme vous pouvez le voir, parcourir un tuple est légèrement plus rapide que parcourir une liste.
5. Comprendre les cas d'utilisation appropriés pour les listes et les tuples
Les listes conviennent au stockage de collections d'éléments susceptibles de changer au fil du temps, car elles peuvent être facilement modifiées. En revanche, les tuples sont idéaux pour les collections constantes d’éléments qui doivent rester inchangés. Par exemple, alors qu'une liste peut convenir pour une liste de courses qui peut changer, un tuple serait plus adapté pour stocker les jours de la semaine, car ils restent les mêmes.
Exemple de liste :
# creating a list of groceries grocery_list = ["milk", "bread", "eggs", "chicken"] # adding a new item to the grocery list grocery_list.append("bananas")
Exemple de tuple :
# creating a tuple of weekdays weekdays = ("Monday", "Tuesday", "Wednesday", "Thursday", "Friday") # trying to add a new day to the tuple weekdays.append("Saturday") # this will result in an error as tuples cannot be modified after creation
6. Soyez attentif à l'utilisation de la mémoire
Les listes consomment plus de mémoire que les tuples en raison de leur flexibilité, tandis que les tuples occupent moins d'espace en raison de leur immuabilité. Ceci est particulièrement important à prendre en compte lorsqu'il s'agit de grands ensembles de données ou d'applications gourmandes en mémoire.
Vous pouvez utiliser le module sys en Python pour vérifier l'utilisation de la mémoire des variables. Voici un exemple de comparaison de l'utilisation de la mémoire d'une liste et d'un tuple contenant un million d'éléments :
# importing the sys module import sys # creating a list with one million elements numbers_list = list(range(1000000)) # checking the memory usage of the list list_memory = sys.getsizeof(numbers_list) print("Memory usage for list: ", list_memory) # output: Memory usage for list: 9000112 bytes # creating a tuple with one million elements numbers_tuple = tuple(range(1000000)) # checking the memory usage of the tuple tuple_memory = sys.getsizeof(numbers_tuple) print("Memory usage for tuple: ", tuple_memory) # output: Memory usage for tuple: 4000072 bytes
Vous pouvez voir que les tuples consomment moins de mémoire que les listes.
7. Savoir comment parcourir les listes et les tuples
Les listes et les tuples peuvent être itérés à l'aide de boucles, mais en raison de leur immuabilité, les tuples peuvent être légèrement plus rapides. Notez également que les listes peuvent stocker tout type de données, tandis que les tuples ne peuvent contenir que des éléments hachables. Cela signifie que les tuples peuvent être utilisés comme clés de dictionnaire, contrairement aux listes.
Exemple de liste :
# creating a list of numbers numbers = [1, 2, 3, 4, 5] # iterating through the list and checking if a number is present for num in numbers: if num == 3: print("Number 3 is present in the list") # output: Number 3 is present in the list
Exemple de tuple :
# creating a tuple of colors colors = ("red", "green", "blue") # iterating through the tuple and checking if a color is present for color in colors: if color == "yellow": print("Yellow is one of the colors in the tuple") # this will not print anything as yellow is not present in the tuple
8. Familiarisez-vous avec les fonctions et opérations intégrées
Bien que les listes comportent davantage de méthodes intégrées que les tuples, les deux structures de données disposent d'une gamme de fonctions et d'opérateurs intégrés que vous devriez connaître pour l'examen PCEP. Ceux-ci incluent des fonctions comme len(), max() et min(), ainsi que des opérateurs comme in et not in pour vérifier si un élément est dans une liste ou un tuple.
Exemple de liste :
# creating a list of even numbers numbers = [2, 4, 6, 8, 10] # using the len() function to get the length of the list print("Length of the list: ", len(numbers)) # output: Length of the list: 5 # using the in and not in operators to check if a number is present in the list print(12 in numbers) # output: False print(5 not in numbers) # output: True
Exemple de tuple :
# creating a tuple of colors colors = ("red", "green", "blue") # using the max() function to get the maximum element in the tuple print("Maximum color: ", max(colors)) # output: Maximum color: red # using the in and not in operators to check if a color is present in the tuple print("yellow" in colors) # output: False print("green" not in colors) # output: False
En comprenant les différences, les cas d'utilisation appropriés et la syntaxe des listes et des tuples, vous serez bien préparé pour l'examen PCEP. N'oubliez pas de vous entraîner à utiliser ces structures de données dans différents scénarios pour consolider vos connaissances et augmenter vos chances de réussir l'examen. Gardez à l’esprit qu’avec la pratique vient la perfection !
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3