ParMesSoins Posté(e) 5 décembre 2005 Share Posté(e) 5 décembre 2005 Bonjour, je me lance dans Python pour mon script, j'aurai besoin que celui-ci s'actualise toute les secondes j'ai trouvé la fonction Timer mais celui-ci n'est pas dispo dans ma distri, alors, comment l'inclure (pour que "import timer") voici l'exemple donné dans la doc : import timerdef hello(): print "hello, world"t = Timer(30.0, hello)t.start() # after 30 seconds, "hello, world" will be printed existe-t-il une autre solution ??? Merci ! Lien vers le commentaire Partager sur d'autres sites More sharing options...
alexsolex Posté(e) 5 décembre 2005 Share Posté(e) 5 décembre 2005 Salut ! Tu as testé ton code sur XBMC et ca ne fonctionne pas ? c'est bien ca ? Si oui, essaye d'abord de vérifier ta syntaxe : import timerdef hello(): print "hello, world" t = Timer(30.0, hello) t.start() # after 30 seconds, "hello, world" will be printed N'oublies pas que la casse a toute son importance. Les majuscules et minuscules doivent être respectées. De plus si ton import est correct et que la librairie s'appelle timer (t minuscule), alors je pense fortement que ta fonction doit faire appel à la librairie (pour dire la fonction Timer de la librairie timer) donc essaye de remplacer t = Timer(30.0, hello) par t = timer.Timer(30.0, hello) sous réserve bien entendu que ta syntaxe était correcte. Si tu as un interpréteur python sur ton PC (normalement oui si tu as installé python dessus) alors tapes les choses suivantes import timer dir(timer) ca devrait t'écrire toutes les méthodes et variables de la librairie timer... Lien vers le commentaire Partager sur d'autres sites More sharing options...
ParMesSoins Posté(e) 5 décembre 2005 Auteur Share Posté(e) 5 décembre 2005 Oups ! c vrai que je n'etais pas claire ! je ne me suis même pas compris en me relisant ce soir En fait le problème (hormis la majuscule) est dans le fait que je n'ai pas la librairie "timer" voici l'erreur dans le shell : ImportError: No module named timer ma question était donc, Comment inclure un module sous PC; sous XBMC ??? puis-je faire SANS timer ??? Merci de ton aide, je rame un peu ... beaucoup Lien vers le commentaire Partager sur d'autres sites More sharing options...
alexsolex Posté(e) 5 décembre 2005 Share Posté(e) 5 décembre 2005 Premièrement, si tu lis les docs python, tu comprendras vite que toutes les librairies ne sont pas compatibles avec tous les systèmes. Et notre bon XBMC n'échappe pas au principe... Sinon, la règle générale pour ajouter des librairies, c'est de les mettre dans le répertoire Lib de l'installation python (tu trouveras sur ton PC et sur ta XBox dans le répertoire d'installation de python, un répertoire nommé Lib et qui contient déjà des librairies.) Tu peux également ajouter une librairie directement dans le répertoire où est installé le script qui appel cette librairie. Une autre solution un peu plus complexe, consiste à mettre toutes les lib nécessaires au fonctionnement d'un script dans un répertoire de ton installation de script et de créer une espèce de raccourci vers ce dossier pour dire à ton script d'aller chercher les librairies à importer dans ce dossier. Bref, commence par faire la solution où le script et la librairie sont installés dans le même répertoire, si besoin je t'expliquerais comment faire autrement plus tard Lien vers le commentaire Partager sur d'autres sites More sharing options...
vinz973 Posté(e) 6 décembre 2005 Share Posté(e) 6 décembre 2005 salut si tuas besoin d'un programme qui s'actualise toute les secondes en en fesant marcher un autre utilise un thread import xbmc, time import xbmcgui class HeureActuelle(Thread): def __init__(self,cal): Thread.__init__(self) self.EnrProg=cal def run(self): self.running=1 while self.running: self.EnrProg.clock.setLabel(time.strftime("%H:%M:%S %d/%m/%y",time.localtime())) time.sleep(1) def stop( self ): #avant de quitter le script stop est lancée pour fermer le thread self.running = 0 global th th=HeureActuelle(self) th.start() cet class une fois démarer changera l'heure toute les secondes ( time.sleep(1)) grace a la boucle while Lien vers le commentaire Partager sur d'autres sites More sharing options...
ParMesSoins Posté(e) 6 décembre 2005 Auteur Share Posté(e) 6 décembre 2005 Ouh ben là ! je crois que tu tiens la soluce vinz973 ! Merci ! Merci également à AlexSolex Lien vers le commentaire Partager sur d'autres sites More sharing options...
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant