Cours Python Complet : Concepts Clés
Cours Python Complet : Concepts Clés
# Échange de valeurs
x, y = y, x Conventions
Les Types de Données
int Entier (Integer)
Conversion de types
Nombres entiers positifs, négatifs ou zéro.
int() int("25") → 25
float Flottant (Floating Point)
Nombres décimaux avec virgule flottante. float() float("3.14") → 3.14
Le paramètre sep
Méthode format()
print("Python", "Java", "C++", sep=" - ")
print("Nom: {}, Age: {}".format("Bob", 30))
# Python - Java - C++
print("A", "B", "C", sep="") # Nom: Bob, Age: 30
print("{1} {0}".format("monde", "Bonjour"))
# ABC
# Bonjour monde
print("{n} a {a} ans".format(n="Claire", a=28))
Le paramètre end # Claire a 28 ans
P Y T H O N replace() find()
Remplace texte Trouve position
-6 -5 -4 -3 -2 -1
count() join()
Compte occurrences Joint éléments
texte = "PYTHON"
print(texte[0]) # P Exemples pratiques
print(texte[-1]) # N
print(texte[1:4]) # YTH nom = " alice "
print(texte[:3]) # PYT print([Link]().upper()) # ALICE
print(texte[3:]) # HON
print(texte[::2]) # PTO (pas de 2) phrase = "Python est génial"
mots = [Link]()
# ['Python', 'est', 'génial']
Caractères d'échappement
print("Ligne 1\nLigne 2") # \n = saut de ligne texte = "Bonjour tout le monde"
Priorité :
not NON logique (inverse la valeur) 1. ** (puissance)
2. *, /, //, %
Les Structures Conditionnelles
La structure if Conditions multiples
Exécute un bloc de code si une condition est True . Combiner avec and, or, not.
age = 18 age = 20
if age >= 18: permis = True
print("Vous êtes majeur")
# Opérateur AND
La structure if-else if age >= 18 and permis:
print("Vous pouvez conduire")
Exécute un bloc si vrai, sinon un autre bloc.
# Opérateur OR
age = 16
if age < 12 or age > 65:
if age >= 18:
print("Tarif réduit")
print("Majeur")
else:
print("Mineur") Conditions imbriquées
age = 25
La structure if-elif-else etudiant = True
fruits[1:2] = ["kiwi"]
# ["fraise", "kiwi"]
# Répétition Compréhension
d = a * 2 # [1,2,3,1,2,3]
# Liste de carrés
# Longueur carres = [x**2 for x in range(5)]
Les Tuples et Ensembles
Les Tuples Les Ensembles (Sets)
Un tuple est une collection ordonnée et immuable . Un ensemble est une collection non ordonnée d'éléments
uniques .
Création
Création
# Avec parenthèses
coordonnees = (10, 20) # Avec accolades
fruits = ("pomme", "banane") nombres = {1, 2, 3, 4, 5}
fruits = {"pomme", "banane"}
# Sans parenthèses
point = 5, 10 # Avec set()
ensemble = set([1, 2, 2, 3])
# Tuple d'un élément # {1, 2, 3}
singleton = (42,)
# Ensemble vide
Accès et opérations vide = set()
t = (1, 2, 3, 4, 5)
Opérations
# Accès par indice a = {1, 2, 3, 4}
print(t[0]) # 1 b = {3, 4, 5, 6}
print(t[-1]) # 5
# Union
# Slicing print(a | b) # {1, 2, 3, 4, 5, 6}
print(t[1:4]) # (2, 3, 4)
# Intersection
# Méthodes print(a & b) # {3, 4}
print([Link](2)) # 1
print(len(t)) # 5 # Différence
print(a - b) # {1, 2}
Unpacking
# Différence symétrique
Les Dictionnaires
Structure clé-valeur Modification Parcourir un dictionnaire
Un dictionnaire stocke des paires clé: # Ajouter/Modifier notes = {
valeur . Les clés doivent être uniques. personne["age"] = 26 "Alice": 18,
personne["email"] = "a@[Link]" "Bob": 15
# Création }
personne = { # Supprimer
"nom": "Alice", del personne["ville"] # Parcourir les clés
"age": 25, for nom in notes:
"ville": "Paris" # pop() print(nom)
} age = [Link]("age")
# age = 26 # Clés et valeurs
# Dictionnaire vide for nom, note in [Link]():
vide = {} # Vider print(f"{nom}: {note}")
vide2 = dict() [Link]()
# Parcourir les valeurs
# Avec dict()
d = dict(a=1, b=2)
Méthodes principales for note in [Link]():
print(note)
Méthode Description
Accès aux valeurs Exemples pratiques
keys() Retourne toutes les clés
# Avec crochets # Compter occurrences
values() Retourne toutes les valeurs
print(personne["nom"]) texte = "python"
# Alice items() Retourne paires clé-valeur
compteur = {}
get(k, d) Valeur de k ou d si absent for lettre in texte:
# Avec get() (sûr) compteur[lettre] = \
age = [Link]("age") update(d) Fusionne avec dict d
[Link](lettre, 0) + 1
# 25 pop(k) Supprime et retourne k # {'p':1, 'y':1, ...}
def filtrer_pairs(liste):
Arguments nommés resultat = []
for n in liste:
def afficher_info(nom, age, ville):
if est_pair(n):
print(f"{nom}, {age} ans, {ville}")
[Link](n)
Python et les Mathématiques
Fonctions de base Algorithme : Factorielle Suite de Fibonacci
Fonction Description def factorielle(n): def fibonacci(n):
"""Calcule n!""" """Retourne les n premiers termes"""
abs(x) Valeur absolue
if n == 0 or n == 1: if n <= 0:
round(x, n) Arrondir à n décimales return 1 return []
resultat = 1 elif n == 1:
pow(x, y) x puissance y
for i in range(2, n + 1): return [0]
min() Minimum resultat *= i suite = [0, 1]
max() Maximum return resultat for i in range(2, n):
[Link](suite[-1] + suite[-2])
sum() Somme d'une liste
print(factorielle(5)) # 120 return suite
print(factorielle(0)) # 1
print(abs(-15)) # 15
print(fibonacci(10))
print(round(3.14159, 2)) # 3.14
# [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
print(pow(2, 3)) # 8 Algorithme : PGCD
nombres = [1, 5, 3, 9, 2] def pgcd(a, b): Moyenne et écart-type
print(min(nombres)) # 1 """Plus Grand Commun Diviseur"""
print(max(nombres)) # 9 while b != 0: def moyenne(liste):
print(sum(nombres)) # 20 a, b = b, a % b return sum(liste) / len(liste)
return a
Module math def ecart_type(liste):
print(pgcd(48, 18)) # 6 moy = moyenne(liste)
variance = sum((x - moy)**2
import math
for x in liste) / len(liste)
Nombres premiers return variance ** 0.5
# Constantes
print([Link]) # 3.14159... def est_premier(n):
notes = [12, 15, 18, 14, 16]
print(math.e) # 2.71828... """Vérifie si n est premier"""
print(moyenne(notes)) # 15.0
if n < 2:
# Fonctions return False
print([Link](16)) # 4.0 for i in range(2, int(n**0.5) + 1): Puissance rapide
print([Link](3.2)) # 4 if n % i == 0:
print([Link](3.8)) # 3 return False def puissance_rapide(base, exp):
return True """Calcul de puissance optimisé"""
Module random if exp == 0:
print(est_premier(17)) # True return 1
print(est_premier(20)) # False elif exp % 2 == 0:
import random
moitie = puissance_rapide(base, exp // 2)