Cours 3/11Structure des donnees

Descripteurs de Donnees

Apprends a definir et utiliser les descripteurs (attributs) pour caracteriser tes donnees : nommage, types, contraintes et bonnes pratiques.

25 minNiveau Facile65 XP
1

Qu'est-ce qu'un descripteur ?

Un descripteur (aussi appele attribut, champ ou colonne) est un element qui caracterise une propriete des donnees dans une collection structuree.

Exemple : Table "Eleves"

id_elevenomagemoyenne
1Alice1514.5
2Bob1612.0

Cette table a 4 descripteurs : id_eleve, nom, age, moyenne

Descripteur

Le nom de la colonne (ex: "nom", "age")

Valeur

Le contenu de la cellule (ex: "Alice", 15)

2

Les types de descripteurs

Chaque descripteur a un type qui definit la nature des valeurs qu'il peut contenir. Voici les types principaux :

String (Texte)

Chaines de caracteres : lettres, chiffres, symboles

nomprenomadresseemail

Python : str

Integer (Entier)

Nombres entiers sans decimale

agequantitenombre_elevesannee

Python : int

Float (Decimal)

Nombres avec virgule (decimaux)

prixmoyennetemperaturelatitude

Python : float

Boolean (Booleen)

Vrai (True) ou Faux (False)

est_actifa_payeest_majeurinscrit

Python : bool

Date / DateTime

Dates et/ou heures

date_naissancedate_inscriptionderniere_connexion

Python : datetime

List (Liste)

Collection de plusieurs valeurs

tagscompetencesmatiereshobbies

Python : list

Attention ! Un age stocke comme "15" (string) au lieu de 15 (int) ne pourra pas etre utilise dans des calculs mathematiques.

3

Regles de nommage

Bien nommer ses descripteurs est essentiel pour que les donnees soient comprehensibles et faciles a manipuler.

Bonnes pratiques

  • snake_case : date_naissance
  • Noms explicites : email_contact
  • Minuscules uniquement
  • Prefixes booleens : est_actif, a_paye

A eviter

  • Espaces : "date naissance"
  • Accents : "prenom", "numero"
  • Caracteres speciaux : date-naissance
  • Noms vagues : "data", "info", "x"

Comparaison de nommages

Mauvais
  • Date de Naissance
  • NOM
  • tel.
  • data1
Acceptable
  • dateNaissance
  • Nom
  • telephone
  • info
Excellent
  • date_naissance
  • nom_famille
  • telephone_mobile
  • email_contact
4

La cle primaire

Une cle primaire est un descripteur (ou combinaison de descripteurs) dont la valeur est unique pour chaque enregistrement. Elle permet d'identifier de facon certaine chaque ligne.

Exemples de cles primaires

numero_etudiant

Chaque etudiant a un numero unique

isbn

Chaque livre a un ISBN unique

email

Chaque utilisateur a un email unique

id

Identifiant auto-incremente

Astuce : Si aucun descripteur naturel n'est unique (ex: deux personnes peuvent s'appeler "Martin"), on cree un id numerique auto-incremente.

5

Definir des descripteurs en Python

Structure avec types explicites

# Definition des descripteurs avec leurs types
from typing import TypedDict, List
from datetime import date

# Definir la structure d'un eleve
class Eleve(TypedDict):
    id_eleve: int          # Cle primaire
    nom: str               # Texte
    prenom: str            # Texte
    date_naissance: date    # Date
    moyenne: float          # Decimal
    est_delegue: bool       # Booleen
    matieres: List[str]     # Liste

# Creer un enregistrement
alice: Eleve = {
    "id_eleve": 1,
    "nom": "Dupont",
    "prenom": "Alice",
    "date_naissance": date(2009, 5, 15),
    "moyenne": 14.5,
    "est_delegue": True,
    "matieres": ["Maths", "Francais", "SNT"]
}

# Acceder aux descripteurs
print(alice["prenom"])  # Alice
print(alice["moyenne"])  # 14.5

Verifier les types

# Verifier le type d'une valeur
print(type(alice["nom"]))        # <class 'str'>
print(type(alice["moyenne"]))    # <class 'float'>
print(type(alice["est_delegue"])) # <class 'bool'>

# Lister tous les descripteurs
print(alice.keys())
# dict_keys(['id_eleve', 'nom', 'prenom', ...])

Quiz de validation

Question 1: Qu'est-ce qu'un descripteur de donnees ?

Question 2: Quel type de descripteur utiliserait-on pour stocker 'true' ou 'false' ?

Question 3: Quelle convention de nommage est recommandee pour les descripteurs ?

Question 4: Qu'est-ce qu'une cle primaire ?

Question 5: Pourquoi est-il important de choisir le bon type pour un descripteur ?

A retenir

  • Descripteur = nom de colonne qui caracterise les donnees.
  • Choisir le bon type : str, int, float, bool, date, list.
  • Utiliser le snake_case pour nommer (ex: date_naissance).
  • La cle primaire identifie de facon unique chaque enregistrement.
Pixel