import time import numpy as np def get_dynamic_values(): # Simule la récupération des valeurs dynamiques. # Par exemple, elle pourrait lire des valeurs depuis un capteur ou une API. # Pour cet exemple, nous allons générer une valeur aléatoire. return np.random.normal(loc=50, scale=10) # Valeur aléatoire avec une moyenne de 50 et un écart-type de 10 def update_values(values, new_value, threshold=3): if len(values) == 0: return [new_value] old_mean = np.mean(values) # Ajouter la nouvelle valeur et retirer la première valeur (si nécessaire) if len(values) >= 10: # par exemple, une fenêtre de 10 valeurs values.pop(0) values.append(new_value) new_mean = np.mean(values) # Vérifier si la nouvelle valeur change significativement la moyenne if abs(new_mean - old_mean) > threshold: return values # Accepter la nouvelle valeur else: values.pop() # Rejeter la nouvelle valeur return values # Tableau pour stocker les dernières valeurs last_values = [] # Boucle principale while True: new_value = get_dynamic_values() print(f"Nouvelle valeur récupérée: {new_value}") # Mettre à jour les valeurs avec la nouvelle valeur last_values = update_values(last_values, new_value) print(f"Valeurs mises à jour: {last_values}") # Attendre 5 secondes avant de récupérer la nouvelle valeur time.sleep(1)