🛠 Premier script Python : inventaire du système

Raspberry Pi 3 Model A+ (2018) — Fiche carte · debutant · Schéma : IMG-model-3a-plus-debutant-3-model3a-premier-python.svg — Raspberry Pi 3 A+ en terminal SSH : affichage du SoC BCM2837B0 quad Cortex-A53, 512 MB de RAM, WiFi dual-band et heure NTP

Objectifs

Écrire un premier script Python qui affiche l'inventaire du Raspberry Pi 3 A+ : SoC BCM2837B0 (4 cœurs Cortex-A53 @ 1,4 GHz), 512 MB de RAM partagée CPU/GPU, WiFi 2,4/5 GHz, et l'heure — la carte n'a pas d'horloge temps réel, l'heure vient de NTP via le WiFi à chaque démarrage.

Matériel

Code complet

#!/usr/bin/env python3
# inventaire.py — inventaire matériel du 3 Model A+
import platform, re, shutil, subprocess, datetime

def cpu:
    txt = open("/proc/cpuinfo").read
    model = re.search(r"Model\s*:\s*(.+)", txt)
    ncpu = len(re.findall(r"processor", txt))
    return (model.group(1).strip if model else "?"), ncpu

def temp:
    out = subprocess.run(["vcgencmd", "measure_temp"], capture_output=True, text=True)
    return out.stdout.strip.removeprefix("temp=")

mod, n = cpu
mem = shutil.disk_usage("/")
print("Modele      :", mod)        # attendu : Raspberry Pi Model B+
print("Coeurs CPU  :", n)          # attendu : 4 (Cortex-A53 @ 1,4 GHz)
print("RAM         : 512 Mo LPDDR2 (partagée CPU/GPU)")
print("Temp SoC    :", temp)
print("Heure       :", datetime.datetime.now, "(NTP, pas de RTC embarque)")
print(f"SD racine   : {mem.used//2**30} Go / {mem.total//2**30} Go")
chmod +x inventaire.py && ./inventaire.py

Vérification attendue

Le script affiche un modèle Raspberry Pi, 4 processeurs, une température typique de 35–50 °C, et une date à jour uniquement si le WiFi/NTP a synchronisé l'horloge (sinon une date proche du 1 janv. 1970).

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels