Je cherche à pouvoir définir sur une télécommande deux boutons pour contrôler ma clim :
le premier qui ferait « ventilation plus fort »
le second, « ventilation moins fort »
J’arrive bien à voir quels sont les états possibles pour la valeur :
{{ state_attr('climate.bureau', 'fan_modes') }}
=>
Type de résultat: list
[
"low",
"medium low",
"medium",
"medium high",
"high"
]
Et l’état actuel de ma clim :
{{ state_attr('climate.bureau', 'fan_mode') }}
=>
Type de résultat: string
low
Du coup, sauriez vous me dire comment trouver mon index actuel dans la liste, pour pouvoir passer au service « climate.set_fan_mode » l’index suivant / précédent s’il existe ?
Yes, ça j’ai bien (d’ailleurs dans ton exemple, comme tu le fais sur une chaîne, ça retourne le caractère « l » - les noms des deux attributs sont trop proches c’est relou)
Mais ce qui me manque, c’est plus un équivalent de ça :
En gros, « quelle est la position dans la liste de la valeur actuelle ».
Malheureusement je ne trouve rien dans la doc, et indexof n’est qu’une belle invention de ma part ^^
en python, ça donnerait ça :
animals = ['cat', 'dog', 'rabbit', 'horse']
# get the index of 'dog'
index = animals.index('dog')
Tu trouves que sans l’aide d’ @Herbs tu aurais résolu ton problème ? Si c’est vraiment le cas, mettre la solution sur un de tes messages pourrais s’envisager, dans le cas contraire, ça serait cool de mettre la soltion sur celui qui te l’a apportée
Effectivement en relisant plus à fond, la réponse d ’ @Herbs n’était pas la bonne, tu n’étais pas loin avec ton « IndexOf » mais c’est plus une méthode vb.net