01 — Carte de présentation

Niveau requis : 1 (leçon 01-1 terminée) / Difficulté : 1/5 / Durée estimée : 30–45 min

Ce projet existe déjà comme mini-projet de la leçon 01-1 (section 11). Cette fiche l'étend : si tu as déjà fait la version de la leçon, pars de ton fichier et ajoute les étapes 4 à 6.

Objectif

Le programme affiche dans le terminal une « carte de visite » encadrée te concernant : nom, ville, langage préféré, objectif d'apprentissage, date de début. Une carte propre, alignée, agréable à lire — le genre de sortie qu'on a envie de montrer.

========================================
  Jean — Nice
  Langage : Python
  Objectif : automatiser mes analyses
  Depuis le : 2026-07-01
========================================

Notions utilisées

Cahier des charges

Étapes de construction

Chaque étape produit un programme qui tourne. Lance-le après chaque étape.

  1. Crée card.py qui affiche une seule ligne : ton nom, en dur. Lance-le.
  2. Remplace le nom en dur par une variable name et une f-string. Ajoute les variables city, language, goal, start_date et affiche-les, une par ligne, sans cadre.
  3. Ajoute la ligne de cadre : border = "=" * 40, affichée avant et après le bloc. Vérifie que la carte s'affiche correctement.
  4. Introduis WIDTH = 40 et construis border à partir de WIDTH. Change WIDTH à 50, relance, vérifie que tout suit.
  5. Ajoute deux espaces d'indentation en début de chaque ligne intérieure (directement dans les f-strings). Compare visuellement avec l'exemple.
  6. Centre une ligne de titre : cherche la méthode str.center() dans la doc (help(str.center) dans le REPL) et utilise-la avec WIDTH. C'est ta première recherche de documentation en autonomie — elle fait partie du projet.

Extensions possibles

  1. Ajouter une ligne « âge de l'apprentissage » calculée : nombre de jours écoulés en dur pour l'instant (le calcul de dates réel viendra au niveau 5).
  2. Faire deux cartes à la suite (toi + une personne fictive) et constater la duplication de code — tu comprendras au niveau 4 pourquoi les fonctions existent.
  3. Encadrer aussi les côtés avec des |, en gardant l'alignement du bord droit quel que soit le contenu (plus dur qu'il n'y paraît : il faut len() et un calcul d'espaces).

Erreurs fréquentes sur ce projet

Critères de réussite

Commit conseillé

git add projects/mini-projects/01-carte-de-presentation/
git commit -m "project: add presentation card"

Puis entrée de journal + git push.