lutcho74
Messages postés13Date d'inscriptionmercredi 1 février 2012StatutMembreDernière intervention 8 février 2012
-
6 févr. 2009 à 11:28
lutcho74
Messages postés13Date d'inscriptionmercredi 1 février 2012StatutMembreDernière intervention 8 février 2012
-
6 mars 2009 à 11:24
Bonjour,
J'ai mit au point un questionnaire qui prend des questions complètement aléatoire grâce u module random mais j'aimerais faire de façons a mettre un temps imparti a ces questions comment faire SVP ???
Merci de bien vouloir m'aidai
############################# #Langage : Basic Panoramic, Python #
#############################
Trop de culture épuise un champ fertile
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020371 5 mars 2009 à 23:07
un dernier trouvé sur internet
import threading as TH, time as TI
class Timer:
def __init__(self, n, f, *args, **kargs):
"""Appelle la fonction/classe f toutes les n secondes,
les arguments optionnels sont transmis à f"""
if type(n) is not int:
raise TypeError("n doit être entier")
if n < 1:
raise ValueError("Délai invalide (minimum 1s)")
if not callable(f):
raise TypeError("f ne peut pas être appelé")
self._f = f
self._f_args = args
self._f_kargs = kargs
self._n = n
self.lance = False
self.threads = []
def _boucle(self):
while not self._fin: th TH.Thread(target self._appel, args = (len(self.threads),))
th.start()
self.threads.append(th)
TI.sleep(self._n)
for t in self.threads:
t.join()
def Go(self):
"""Lance le timer"""
if not self.lance:
self._fin = False self.thread TH.Thread(target self._boucle)
self.thread.start()
self.lance = True
def Stop(self):
"""Arrete le timer"""
if self.lance:
self._fin = True
self.running = False
if __name__ == '__main__':
x = 1
def f():
global x
print '\t' + `x`
x += 1
T = Timer(3, f)
T.Go()
try:
i = 1
while True:
print i
i += 1
TI.sleep(1)
except KeyboardInterrupt:
pass
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020371 5 mars 2009 à 23:07
non je n'avais pas bien regardé, utilise plutot la fonction sleep(), et tu devrais obtenir ce que tu veux, si tu ne sais pas comment elle marche, regarde sur google, je ne connais pas cette fonction
lutcho74
Messages postés13Date d'inscriptionmercredi 1 février 2012StatutMembreDernière intervention 8 février 2012 6 mars 2009 à 11:24
Salut,
Tout d'abord merci.
Mais je suis débutant en programmation donc je pense mettre un peu de temps a comprendre ton code mais bon ça va tu m'a mit des indication entre guillemets merci :-)
Et bien je te remercie pour ce code je vais voir si j'y comprend quelque chose et comment l'adapter à mon script si j'y arrive...