Spaces:
Sleeping
Sleeping
| import unicodedata | |
| def normalize(text: str) -> str: | |
| return unicodedata.normalize("NFD", str(text).lower()).encode("ascii", "ignore").decode("ascii") | |
| def weather_categorize(code: int) -> str: | |
| if code == 0: return "Ciel dégagé" | |
| elif code in [1, 2]: return "Nuageux" | |
| elif code == 3: return "Couvert" | |
| elif code in [51,53,55]: return "Bruine" | |
| else: return "Pluie" | |
| def pm25_to_level(val: float) -> dict: | |
| if val <= 15: | |
| return {"label": "Sain 🟢", "color": "#4CAF50", "advice": "Qualité de l'air excellente. Activités normales."} | |
| elif val <= 25: | |
| return {"label": "Modéré 🟡", "color": "#FFB300", "advice": "Qualité acceptable. Prudence pour les personnes sensibles."} | |
| elif val <= 35: | |
| return {"label": "Mauvais 🟠", "color": "#FF9800", "advice": "Effets possibles sur la santé. Réduire les efforts intenses."} | |
| else: | |
| return {"label": "Dangereux 🔴", "color": "#F44336", "advice": "Port du masque recommandé, limiter les sorties."} |