2010-06-27 6 views
1

Je développe une application web et voudrais afficher la date actuelle de l'utilisateur en se basant sur son fuseau horaire. Voici mon code:Problème avec la date en Python

userTimezone = -5 #EAST is positive, WEST negative 
utcTimestamp = time.mktime(time.gmtime()) 
userDate = time.gmtime(utcTimestamp+userTimezone*60*60) 

Je pense que le problème est avec gmtime() car il fait des conversions automatiquement. Si je le pouvais, je remplacerais gmtime par une fonction qui ne convertit rien, mais n'en a trouvé aucune.

Répondre

1

vous recherchez probablement time.localtime(seconds). gmtime renvoie toujours l'heure utc.

+0

Cela devrait fonctionner correctement, mais lorsque j'imprime time.gmtime() et userDate de mon script, la différence entre ces deux dates est de 6 heures, pas de 5. De plus, time.altzone sur mon ordinateur est erroné. –

+0

Enfin cela a fonctionné. Je vous remercie. –

0

Définissez time.timezone sur le fuseau horaire de l'utilisateur, puis affichez-le en utilisant localtime().

+0

Est-il possible de régler time.timezone? Ça ne marche pas. –