Nombre aléatoire qui change toutes les 5 secondes

- - Dernière réponse :  Julien - 21 mars 2016 à 19:59
Bonjour,

J'aimerais avoir comme une horloge sur mon bureau qui toutes les 5 secondes m'afficherais un nombre compris entre 1 et 100.
Sur internet on trouve beaucoup de générateur de nombre aléatoire mais aucun ne tourne en continu ce qui est génant car je veux m'en servir pour mixer mes décisions et devoir appuyer sans arret sur des boutons me déconcentre.

Je me suis dit que ce devait être possible avec python car j'avais déjà recopié des codes avec ce language mais je suis totalement incapable d'en crer un a partir de 0.

Pouvez vous m'aider ?

Cela me ferai un grand plaisir.
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
12934
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
24 mars 2019
350
1
Merci
Bonjour,

je ne fais pas de python, mais ce que tu cherches s'appelle un timer.
une rapide recherche m'a mené là
http://www.developpez.net/forums/d166419/autres-langages/python-zope/general-python/utilisation-timer-python/

ou plusieurs options sont évoquées, il y a aussi un lien vers un autre post

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 118 internautes nous ont dit merci ce mois-ci

Merci,
Je vais regarder ça de suite.
Commenter la réponse de Whismeril
Messages postés
70
Date d'inscription
mercredi 1 novembre 2000
Dernière intervention
1 juin 2018
10
1
Merci
Salut, peut-être que cela suffirait (si j'ai bien compris le problème):
from Tkinter import *
from random import randrange

def timer():
    chiffre = randrange(101) #<- amplitude du nombre tiré au hasard
    if chiffre < 10:
        label.config(text='0'+str(chiffre))
    else:
        label.config(text=str(chiffre))
    fen.after(5000,timer)
    
if __name__ == "__main__":
    fen = Tk()
    fen.resizable(0,0)
    label = Label(fen,font="Century 200 normal") # <- 200 = taille 
    label.pack()
    timer()
    fen.mainloop()


--

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 118 internautes nous ont dit merci ce mois-ci

Bonjour.
Absolument génial.
Ça faisait une heure que j'essayer de faire quelque chose avec cette histoire de timer mais honnêtement j'était comme devant la pierre de rosette.

La copié coller et ça marche.

Gros merci.

Par compte, j'essai de comprendre la logique du code.
Alors si vous aviez 5 minutes a m'accorder.

Au début on défini le chiffre.
Ça je comprend même si je ne sais pas le faire.
Si le chiffre fait moins de 10 on ajoute un 0 sinon il donne le chiffre.
Mais dans le cas de 100, est ce qu'il élargira la fenetre ou est ce qu'il afichera 00 en cachant le 1? (pour l'instant je n'est pas vu de 100 ou de 00)
Ce qui me laissera toujours 100 chiffres de 00 à 99 l'un comme l'autre me vont parfaitement
J'imagine que le 5000 ce sont de millisecondes ?

Par contre c'est la définition de la fenêtre que je ne comprend pas.
Pourquoi faut il mettre un if.
If pour moi, ça veut dire si, donc une condition.
Pourquoi doit on mettre une condition si on la veut toujours ?
Et après le texte la je comprend pas.
Je veux dire ça défini la fenêtre mais l'ordre des ordres à t'il une importance ou pas.

Comment tous ça marche ?

Encore merci.
Mints
Messages postés
70
Date d'inscription
mercredi 1 novembre 2000
Dernière intervention
1 juin 2018
10 > Julien -
Re,
d'abord le le if __name__ == "main" est un réflexe chez moi il stipule que le script n'est à exécuter que si il est lancé via lui-même et non lorsqu'on l'importe dans un autre script.(vous pouvez l'enlever dans votre cas).
fen = Tk() crée un objet fenêtre Tkinter (qui est une bibliothèque utilisée pour créer des interfaces graphiques)
fen.resizable(0,0) interdit le redimensionnement de la fenêtre.
label = Label(...) crée une étiquette qui sera placé dans la fenêtre et dont la police d'écriture sera Century.
label.pack() est la méthode de placement géométrique du label dans la fenêtre; elle sert à agencer les différents widgets(windows gadget comme les labels, les boutons, les canevas,...) présents dans un conteneur(fenêtre,frame,canevas...)
timer() : invocation de la fonction qui mettra à jour le nombre du label toutes les 5000ms en mettant un '0' si c'est un chiffre, si le nombre est 100 le label s’élargira et donc la fenêtre aussi.
fen.mainloop() lance la boucle principale de la fenêtre qui surveillera les enrênements utilisateurs (souris, claviers),mettra à jour les widgets présents et rafraîchira l'affichage.

Cordialement,
Mints
Parfait merci.

Va vraiment falloir que je m'y mette, c'est top de savoir faire des truc comme ça.
Commenter la réponse de Mints

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.