Rappels de Python

Les bases essentielles en 1ère NSI

Objectif : Cette page résume les concepts Python essentiels.

1. Variables et types de données

Déclaration de variables
# Types de base
nombre = 42              # int (entier)
prix = 19.99            # float (flottant)
nom = "Alice"           # str (chaîne de caractères)
est_majeur = True       # bool (booléen)

# Afficher le type
print(type(nombre))     # 
Conversion de types
# Conversions
age_texte = "18"
age = int(age_texte)           # Convertir en entier
note = float("15.5")           # Convertir en flottant
message = str(42)              # Convertir en chaîne
Attention : Les noms de variables sont sensibles à la casse (ageAge)

2. Opérations arithmétiques et logiques

Opérations arithmétiques
a = 10
b = 3

addition = a + b        # 13
soustraction = a - b    # 7
multiplication = a * b  # 30
division = a / b        # 3.333...
division_entiere = a // b  # 3
modulo = a % b          # 1
puissance = a ** b      # 1000
Opérateurs de comparaison
a = 10
b = 5

a == b    # False (égal)
a != b    # True (différent)
a > b     # True (supérieur)
a < b     # False (inférieur)
a >= b    # True (sup. ou égal)
a <= b    # False (inf. ou égal)
Opérateurs logiques
age = 18
permis = True

# ET logique (and) - les deux conditions doivent être vraies
peut_conduire = age >= 18 and permis

# OU logique (or) - au moins une condition doit être vraie
reduction = age < 18 or age > 65

# NON logique (not) - inverse le booléen
est_mineur = not (age >= 18)

3. Structures conditionnelles (if, elif, else)

Syntaxe de base
age = 16

if age >= 18:
    print("Vous êtes majeur")
elif age >= 16:
    print("Vous êtes presque majeur")
else:
    print("Vous êtes mineur")
Conditions imbriquées
note = 15

if note >= 10:
    if note >= 16:
        print("Très bien !")
    else:
        print("Bien !")
else:
    print("Insuffisant")
Astuce : L'indentation (décalage) est obligatoire en Python ! Utilisez 4 espaces.

4. Boucles (for et while)

Boucle for
# Avec range()
for i in range(5):
    print(i)  # 0, 1, 2, 3, 4

# Avec range(début, fin)
for i in range(2, 7):
    print(i)  # 2, 3, 4, 5, 6

# Avec pas
for i in range(0, 10, 2):
    print(i)  # 0, 2, 4, 6, 8

# Parcourir une liste
fruits = ["pomme", "banane", "orange"]
for fruit in fruits:
    print(fruit)
Boucle while
# Tant que la condition est vraie
compteur = 0
while compteur < 5:
    print(compteur)
    compteur += 1

# Avec une condition d'arrêt
reponse = ""
while reponse != "oui":
    reponse = input("Continuer ? ")
Contrôle des boucles
# break : sortir de la boucle
for i in range(10):
    if i == 5:
        break  # Sort quand i vaut 5
    print(i)

# continue : passer à l'itération suivante
for i in range(5):
    if i == 2:
        continue  # Saute l'affichage de 2
    print(i)

5. Listes

Créer et manipuler des listes
# Créer une liste
nombres = [1, 2, 3, 4, 5]
vide = []

# Accéder aux éléments (index commence à 0)
premier = nombres[0]      # 1
dernier = nombres[-1]     # 5

# Modifier un élément
nombres[2] = 10           # [1, 2, 10, 4, 5]

# Ajouter un élément
nombres.append(6)         # [1, 2, 10, 4, 5, 6]

# Insérer à une position
nombres.insert(0, 0)      # [0, 1, 2, 10, 4, 5, 6]

# Supprimer un élément
nombres.remove(10)        # Supprime la première occurrence de 10
del nombres[0]            # Supprime l'élément à l'index 0
element = nombres.pop()   # Supprime et retourne le dernier élément
Slicing (tranches)
liste = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

liste[2:5]     # [2, 3, 4] (de l'index 2 à 4)
liste[:3]      # [0, 1, 2] (du début à l'index 2)
liste[7:]      # [7, 8, 9] (de l'index 7 à la fin)
liste[::2]     # [0, 2, 4, 6, 8] (tous les 2 éléments)
liste[::-1]    # [9, 8, 7, ...] (inverser la liste)
Méthodes utiles
nombres = [3, 1, 4, 1, 5, 9, 2]

len(nombres)      # 7 (longueur)
sum(nombres)      # 25 (somme)
max(nombres)      # 9 (maximum)
min(nombres)      # 1 (minimum)
nombres.sort()    # Trier la liste
nombres.reverse() # Inverser la liste
nombres.count(1)  # 2 (nombre d'occurrences de 1)

6. Fonctions

Définir une fonction
# Fonction simple
def dire_bonjour():
    print("Bonjour !")

dire_bonjour()  # Appel de la fonction

# Fonction avec paramètres
def saluer(nom):
    print(f"Bonjour {nom} !")

saluer("Alice")

# Fonction avec valeur de retour
def additionner(a, b):
    return a + b

resultat = additionner(5, 3)  # 8
Paramètres par défaut
def presenter(nom, age=18):
    print(f"{nom} a {age} ans")

presenter("Bob")           # Bob a 18 ans
presenter("Alice", 25)     # Alice a 25 ans
Plusieurs valeurs de retour
def min_max(liste):
    return min(liste), max(liste)

minimum, maximum = min_max([1, 5, 3, 9, 2])
print(minimum, maximum)  # 1 9
Bonne pratique : Donnez des noms explicites à vos fonctions (verbe à l'infinitif).

7. Chaînes de caractères (strings)

Manipulation de base
texte = "Bonjour"

# Accès aux caractères
premier = texte[0]        # 'B'
dernier = texte[-1]       # 'r'

# Longueur
longueur = len(texte)     # 7

# Concaténation
message = texte + " tout le monde"

# Répétition
repete = "Ha" * 3         # "HaHaHa"
Méthodes utiles
texte = "  Python est Génial  "

texte.upper()           # "  PYTHON EST GÉNIAL  "
texte.lower()           # "  python est génial  "
texte.strip()           # "Python est Génial" (enlève les espaces)
texte.replace("é", "e") # "  Python est Genial  "
texte.split()           # ["Python", "est", "Génial"]
"nsi" in texte         # False (recherche)
Formatage
nom = "Alice"
age = 18

# f-string (recommandé)
message = f"{nom} a {age} ans"

# format()
message = "{} a {} ans".format(nom, age)

# Ancien style (%)
message = "%s a %d ans" % (nom, age)

8. Modules et bibliothèques

Importer des modules
# Importer tout le module
import math
resultat = math.sqrt(16)  # 4.0

# Importer une fonction spécifique
from math import pi, cos
print(pi)  # 3.141592...

# Importer avec un alias
import random as rd
nombre = rd.randint(1, 10)
Modules courants
math - Mathématiques
import math
math.sqrt(16)   # Racine carrée
math.pi         # Constante π
math.cos(0)     # Cosinus
math.floor(3.7) # Arrondi inférieur
random - Aléatoire
import random
random.randint(1, 10)  # Entier
random.choice([1,2,3]) # Élément
random.shuffle(liste)  # Mélanger
À savoir : Les modules doivent être importés au début du fichier Python.

Pour aller plus loin

Vous êtes prêt(e) à explorer les chapitres de 1ère NSI !

Accéder aux cours

Découvrez le programme complet

Voir les cours
S'entraîner

Pratiquez avec des exercices

Exercices
Besoin d'aide ?

Contactez-nous

Contact