Première NSIProjets

Structures : Bibliothèque

Système de gestion d'une collection de livres numériques en Python

Projet - Système de Gestion de Bibliothèque Numérique

Le but de ce projet est de créer un programme qui gère une collection de livres : ajout, recherche, affichage, suppression, et conservation des données dans un fichier CSV entre deux lancements. Dans ce projet, chaque livre est un dictionnaire, et la bibliothèque est une liste de ces dictionnaires.

L'ISBN identifie un livre : deux fiches ne partagent pas le même ISBN.

1. Les livres

Une fiche contient :

  • titre (str)
  • auteur (str)
  • annee_publication (int)
  • genre (str)
  • isbn (str, unique)

Choisir un exercice

Cliquer sur un exercice de la liste pour afficher son sujet.

2. Le fichier CSV

Fichier bibliotheque.csv attendu quand les deux livres sont encore là, virgule comme séparateur, UTF-8 :

titre,auteur,annee_publication,genre,isbn
Les Misérables,Victor Hugo,1862,Roman,978123
Notre-Dame de Paris,Victor Hugo,1831,Roman,978456

L'en-tête est obligatoire : sans ces noms de colonnes, DictWriter et DictReader ne se parlent pas. Dans un CSV, tout est texte au départ : au chargement, annee_publication redevient un int.

Choisir un exercice

Cliquer sur un exercice de la liste pour afficher son sujet.

3. Menu et suppression

Choisir un exercice

Cliquer sur un exercice de la liste pour afficher son sujet.

Ce qu'on rend.

  • bibliotheque.py, avec un commentaire d'en-tête (nom et classe), les fonctions, et le menu qui charge le CSV au démarrage et le réécrit au choix Quitter ;
  • un bibliotheque.csv produit par sauvegarder, contenant au moins les deux livres de l'exemple.