Comment intégrer une fonction if dans while
Fermé
le_codeur_nul
Messages postés
2
Date d'inscription
mercredi 21 octobre 2020
Statut
Membre
Dernière intervention
21 octobre 2020
-
Modifié le 21 oct. 2020 à 10:00
yg_be Messages postés 22717 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 22 avril 2024 - 21 oct. 2020 à 15:14
yg_be Messages postés 22717 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 22 avril 2024 - 21 oct. 2020 à 15:14
A voir également:
- Comment intégrer une fonction if dans while
- Fonction si et - Guide
- Intégrer une vidéo dans un powerpoint - Guide
- Fonction moyenne excel - Guide
- Fonction somme excel - Guide
- Intégrer agenda outlook dans google - Guide
2 réponses
Reivax962
Messages postés
3671
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
Modifié le 21 oct. 2020 à 10:38
Modifié le 21 oct. 2020 à 10:38
Bonjour,
La base en python, c'est de respecter les indentations de code, or là il me semble que tu as copié collé ton code (issu d'ailleurs d'un autre langage, non ? C'est quoi ces accolades ?) sans y prêter attention.
Il suffit donc de nettoyer un peu tout ça :
Par contre, écrit tel quel, cela va générer le démarrage de la séquence toutes les secondes pendant une heure.
Tu devrais trouver un moyen de ne le faire qu'une fois par jour, par exemple en gardant en mémoire le jour de dernier déclenchement et en vérifiant qu'il a changé (c'est un exemple de solution, tu peux aussi utiliser un booléen qui bascule à VRAI quand on lance la séquence et revient à FALSE dès que l'heure ne vaut plus 14...)
Xavier
La base en python, c'est de respecter les indentations de code, or là il me semble que tu as copié collé ton code (issu d'ailleurs d'un autre langage, non ? C'est quoi ces accolades ?) sans y prêter attention.
Il suffit donc de nettoyer un peu tout ça :
print("[DATE DE DEBUT] :") print (now.strftime("%Y-%m-%d %H:%M:%S")) print("---------------------") infinite = 1 while infinite == 1 : print("[TIME] :") print(time.ctime()) if now.strftime("%H") == 14 : print("[EVENT]:") print("--demarage de la sequence--") print("---------------------") print("") else : print("[EVENT]:") print("--pas d'actions--") print("---------------------") print("") time.sleep(1)
Par contre, écrit tel quel, cela va générer le démarrage de la séquence toutes les secondes pendant une heure.
Tu devrais trouver un moyen de ne le faire qu'une fois par jour, par exemple en gardant en mémoire le jour de dernier déclenchement et en vérifiant qu'il a changé (c'est un exemple de solution, tu peux aussi utiliser un booléen qui bascule à VRAI quand on lance la séquence et revient à FALSE dès que l'heure ne vaut plus 14...)
Xavier
le_codeur_nul
Messages postés
2
Date d'inscription
mercredi 21 octobre 2020
Statut
Membre
Dernière intervention
21 octobre 2020
21 oct. 2020 à 14:47
21 oct. 2020 à 14:47
merci pour ton aide je ferai attention la prochaine fois !
yg_be
Messages postés
22717
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
22 avril 2024
1 476
21 oct. 2020 à 15:14
21 oct. 2020 à 15:14
bonjour,
tu peux également faire varier le temps d'attente, tu peux attendre plus d'une seconde si la prochaine action est dans plusieurs heures.
tu peux également faire varier le temps d'attente, tu peux attendre plus d'une seconde si la prochaine action est dans plusieurs heures.