import subprocess import sys from pathlib import Path BASE = Path(__file__).parent def build_menu() -> list[tuple[str, Path]]: menu = [ ("Calcola T ambiente", BASE / "start" / "calcola_t_amb.py"), ("Plot dati raw", BASE / "start" / "plot_temperatura.py"), ] for folder in sorted(BASE.glob("induttore*/")): for script in sorted(folder.glob("app*.py")): menu.append((f"{folder.name} — {script.name}", script)) menu.append(("Report completo (PDF + LaTeX)", BASE / "report_completo.py")) return menu def main(): while True: menu = build_menu() print("\n=== Analisi Termica Forno ===\n") for i, (label, _) in enumerate(menu, 1): print(f" {i}. {label}") print(" 0. Esci\n") scelta = input("Scegli: ").strip() if scelta == "0": break if not scelta.isdigit() or not (1 <= int(scelta) <= len(menu)): print("Scelta non valida.") continue _, script = menu[int(scelta) - 1] subprocess.run([sys.executable, str(script)]) if __name__ == "__main__": main()