🛠 Premier script Python : inventaire du système

Raspberry Pi 3 Model A+ (2018) — Ficha de placa · 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

Objetivos

Escribir un primer script de Python que muestre el inventario del Raspberry Pi 3 A+: SoC BCM2837B0 (4 núcleos Cortex-A53 @ 1,4 GHz), 512 MB de RAM compartida CPU/GPU, WiFi 2,4/5 GHz y la hora — la placa no tiene reloj de tiempo real, la hora proviene de NTP a través del WiFi en cada arranque.

Material

Código completo

#!/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 (partagee 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

Verificación esperada

El script muestra un modelo de Raspberry Pi, 4 procesadores, una temperatura típica de 35–50 °C y una fecha actualizada solo si el WiFi/NTP ha sincronizado el reloj (de lo contrario, una fecha cercana al 1 de enero de 1970).

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales