Détails
La fonction time.time() de Python renvoie-t-elle l'horodatage local ou UTC ?
Est-ce que time.time()
dans le module de temps Python renvoie l'heure du système ou l'heure en UTC ?
528
3
La fonction [
time.time()
][1] renvoie le nombre de secondes écoulées depuis l'époque, sous forme de secondes. Notez que l' "époque" ; est définie comme le début du 1er janvier 1970 en UTC. L'époque est donc définie en termes d'UTC et établit un moment global dans le temps. Quel que soit l'endroit où vous vous trouvez, "seconds past epoch" ; (time.time()) renvoie la même valeur au même moment.Voici un exemple de sortie que j'ai exécuté sur mon ordinateur, en le convertissant également en chaîne de caractères.
La variable
ts
est le temps retourné en secondes. Je l'ai ensuite converti en une chaîne de caractères en utilisant la bibliothèquedatetime
, ce qui en fait une chaîne lisible par l'homme.[1] : https://docs.python.org/2/library/time.html#time.time
Il s'agit de la forme textuelle d'un timestamp qui peut être utilisée dans vos fichiers texte. (Le titre de la question était différent dans le passé, donc l'introduction de cette réponse a été modifiée pour clarifier comment il pourrait être interprété comme l'heure. [mise à jour 2016-01-14])
Vous pouvez obtenir l'horodatage sous forme de chaîne en utilisant les fonctions
.now()
ou.utcnow()
dedatetime.datetime
:Le
now
diffère deutcnow
comme prévu -- sinon ils fonctionnent de la même manière :Vous pouvez rendre le timestamp à la chaîne explicitement :
Ou vous pouvez être encore plus explicite pour formater l'horodatage comme vous le souhaitez :
Si vous voulez le format ISO, utilisez la méthode
.isoformat()
de l'objet :Vous pouvez les utiliser dans des variables pour les calculs et l'impression sans conversion.
En se basant sur la réponse de #squiguy, pour obtenir un véritable horodatage, il faudrait le taper à partir de float.
Du moins, c'est le concept.