ton entité est a virgule ?
Chaque fois que vous tapez un signe de pourcentage %
dans une chaîne de format printf, il traitera les lettres suivantes comme une balise de format jusqu’à ce qu’un soi-disant « spécificateur » soit rencontré (dans ce cas f
). Vous pouvez en savoir plus ici , mais pour ESPHome, il n’y a vraiment que quelques choses que vous devez savoir.
Décomposons%.1f
:
%
- lancer la chaîne de format.1
- arrondir le nombre décimal aux1
chiffres après la virgule.f
- le spécificateur qui indique à printf le type de données de l’argument. Ici c’est af(loat).
Par exemple, si vous souhaitez imprimer une valeur de capteur avec une précision à deux chiffres, vous écrivez %.2f
et avec une précision de zéro chiffre (sans décimale) %.0f
.
Une autre chaîne de format intéressante est %7.2f
, qui deviendrait la chaîne justifiée à droite pour une valeur de 20,506." 20.51"
%
- lancer le format7
- signifie que le nombre sera justifié à droite et complété à gauche par des espaces si le résultat comporte moins de 7 caractères..2
- arrondir le nombre décimal aux2
chiffres après la virgule.f
- spécificateur : f(loat).
it.printf("%.1f", id(Conso).state);