12 astuces en Python pour 2024

Article publié le et mis à jour le .

Les meilleurs trucs et astuces en Python pour 2024

Vous voulez découvrir des bouts de codes pour optimiser et rendre votre code plus lisible en Python ?

Alors cette liste des meilleurs trucs et astuces en Python est faite pour vous !

1. Comment avoir la valeur et l’index dans une boucle en Python ?

Si vous itérez sur une liste et avez besoin de la valeur et de l’index, utilisez enumerate :

lettres = ['a', 'b', 'c', 'd', 'e']

for i, v in enumerate(lettres):
	print(f"lettres[{i}] = {v}")

💡 Vous voulez en apprendre plus sur la fonction print en Python ? Alors mon article complet sur la fonction print vous intéressera sûrement !

2. Comment éliminer les doublons dans une liste en Python ?

Pour éliminer les doublons dans une liste, vous pouvez utiliser un set plutôt qu’une liste :

ma_liste = [0, 0, 0, 1, 1, 2, 3, 3, 4]
mon_set = set(ma_liste)
print(mon_set)

set_direct = {0, 0, 0, 1, 1, 2, 3, 3, 4}
print(set_direct)

3. Comment compter le nombre d’occurences dans une liste en Python ?

Si vous avez besoin de compter le nombre d’occurences dans une liste, vous pouvez utilisez l’objet Counter :

from collections import Counter

ma_liste = ['a', 'a', 'b', 'a', 'c', 'd', 'e']
mon_counter = Counter(ma_liste)

print(mon_counter)
print(mon_counter['a'])
print(mon_counter.most_common(1))

4. Comment joindre une liste de strings ensemble en Python ?

Pour joindre une liste de strings ensemble, utilisez la méthode .join() :

ma_liste = ['comment', 'coder', '.com']
print("".join(ma_liste))

5. Comment utiliser les compréhensions de liste en Python ?

Utilisez des list comprehensions plutôt que des boucles for

carres = []

for i in range(5):
	carres.append(i * i)

print (carres)
carres = [i * i for i in range(5)]
print(carres)

💡 Vous voulez en apprendre plus sur cette syntaxe pour construire des listes en Python ? Alors mon article Comment utiliser les listes en compréhension ? vous intéressera sûrement !

6. Comment fusionner deux dictionnaires en Python ?

Pour merge 2 dictionnaires utilisez le nouveau | disponible depuis python 3.9 :

a = {}
b = {}

c = a | b

print(c)

Le résultat est un dictionnaire merged et les clés sont override par le 2 eme

7. Comment retirer les doublons et garder l’ordre d’une liste en Python ?

Garder l’ordre d’une liste pour laquelle on a retiré les doublons

list(dict.fromkeys(doublons))

8. Comment utiliser else après une boucle for

Utiliser else dans les boucles for permet d’executer du code si la boucle s’execute en entier

nombres = [2, 4, 6, 8, 1]

for number in numbers:
	if number % 2 == 1:
		print(number)
		break
else:
	print("Pas de nombres impairs")

Sortie standard :

1  # si 1 n'était pas dans la liste, on aurait eu "Pas de nombres impairs"

9. Comment fonctionne la destructuration de listes en Python ?

On peut déstructurer une liste en python en précédant une variable du symbole *.

ma_liste = [1, 2, 3, 4]
un, deux, trois, quatre = ma_liste
un, deux, *reste = ma_liste

10. Comment comparer des variables avec une seule condition en Python ?

Pour comparer 3 nombres directement en Python, on peut utiliser la notion mathématique

0 < x < 10

Pas besoin de faire :

0 < x and x < 10

Vous pouvez donc raccourcir vos conditions (tant que ça ne rend pas leur lecture plus complexe 😛).

11. Comment représenter des grands nombres en Python ?

En Python, comme dans d’autres langages comme JavaScript, on peut Séparer des grands nombres avec des _ pour améliorer leur lisibilité.

print(1_000_000)
print(42_000)

12. Comment obtenir l’id d’une variable en Python ?

Pour avoir l’id d’une variable en Python, on peut utiliser la fonction id().

Pour rappel, en Python, les :

  • Integers, floats, strings, boolean, tuples sont immutables
  • List, set et dictionnaires sont mutables
print(id(1))  # 4325776624
print(id(1))  # 4325776624
print(id(2))  # 4325776656
print(id("string"))  # 4327978288
print(id(list()))  # 4305250624
print(id(list()))  # 4305914560