Python fournit des paquets différents ( datetime
, time
, calendar
) comme on peut le voir ici pour faire face avec le temps. J'ai fait une grosse erreur en utilisant ce qui suit pour obtenir l'heure GMT actuelletime.mktime(datetime.datetime.utcnow().timetuple())
Quel est un moyen simple d'obtenir l'heure GMT actuelle dans l'horodatage Unix?
datetime.utcnow()
renvoie l'heure UTC actuelle en tant qu'objet datetime (je suppose que vous voulez UTC lorsque vous parlez de "l'heure GMT").time.time()
renvoie l'horodatage Unix directement sous forme de nombre flottant. Voici comment convertir datetime.date/datetime.datetime représentant l'heure UTC en horodatage POSIX .Réponses:
J'utiliserais time.time () pour obtenir un horodatage en secondes depuis l'époque.
Production:
Pour l'implémentation standard de CPython sur la plupart des plates-formes, cela renverra une valeur UTC.
la source
Production:
la source
est-ce que cela aide?
Comment convertir un objet datetime UTC Python en horodatage UNIX
la source
time.time()
et n'avez pas besoin de conversion de date / heure du tout.Ou simplement en utilisant le module standard datetime
Vous pouvez tronquer ou multiplier selon la résolution souhaitée. Cet exemple produit des millis.
Si vous voulez un horodatage Unix correct (en secondes), supprimez le
* 1000
la source
moment
bibliothèque Javascriptmoment().utc().valueOf()
. Exactement ce que je cherchais. Mercipython2 et python3
il est bon d'utiliser le module de temps
vous pouvez également utiliser le module datetime, mais lorsque vous utilisez strftime ('% s'), mais strftime convertit l'heure en votre heure locale!
python2
python3
la source
time.time()
etdatetime.utcnow().timestamp()
ne pas donner la même valeur!J'aime cette méthode:
Les autres méthodes publiées ici ne sont pas garanties de vous donner UTC sur toutes les plates-formes ou ne rapportent que des secondes entières. Si vous voulez une résolution complète, cela fonctionne, à la micro-seconde.
la source
utctimetuple
place fait cependant l'affaire.Production:
la source
time.time()
pour moi.dt.utcnow
retourne unedatetime
information sans fuseau horaire.strftime
Suppose ensuite que l'datetime
heure est locale.la source
Au moins en python3, cela fonctionne:
la source