import time
t = time.ctime()
Pour moi, t
est 'Sat Apr 21 11:58:02 2012'
. J'ai plus de données comme ça.
Ma question est:
t
en datetime
en Python? Y at-il des modules à cela?J’ai essayé de faire un temps dict
puis de convertir t
, mais j’ai l’impression que ce n’est pas la meilleure façon de le faire en Python.
Détails:
ctime
(comme ['Sat Apr 21 11:56:48 2012', 'Sat Apr 21 11:56:48 2012']
). datetime
, puis le stocker dans une db
avec timestamp
.Vous devriez utiliser strptime
: cette fonction analyse une chaîne représentant une heure selon un format. La valeur de retour est un struct_time .
Le paramètre format par défaut est %a %b %d %H:%M:%S %Y
qui correspond au formatage renvoyé par ctime ().
Donc dans votre cas, essayez simplement la ligne suivante, puisque le format par défaut est celui de ctime:
import datetime
import time
datetime.datetime.strptime(time.ctime(), "%a %b %d %H:%M:%S %Y")
Retours: datetime.datetime(2012, 4, 21, 4, 22, 00)
Essayez datetime.strptime()
.
Voir:http://docs.python.org/library/datetime.html#datetime.datetime.strptime
Les informations sur les paramètres régionaux ne sont pas utilisées par ctime ().
Remarque: lorsque vous utilisez
time.ctime()
&datetime.fromtimestamp()
, vous pouvez également rencontrer un problème historique lors de la conversion de fuseaux horaires locaux. comme indiqué dans les commentaires de ces réponses ici et ici
Alternativement, si vous avez besoin d'une "Date & Heure" que vous pouvez formater, il y a plusieurs façons d'utiliser datetime
, time.strftime , également en utilisant même python pandas
, et ici posix_time , et enfin comme mentionné sur les autres réponses ici _ { datetime.strptime
.
Si vous n'êtes pas inquiet à propos de fuseaux horaires ou du calendrier julien , heures ambiguës ou conversion en heure locale en utilisant UNIXTIMESTAMP , cherchant à utiliser Epoch Time, assurez-vous de spécifier dates époques notables en informatique et ceci pour unix
Quelle je remercie Matt sur ce fil pour le
"S'il vous plaît, arrêtez de l'appeler" époque "quand vous voulez dire" heure Unix ".......
Maintenant aussi fou que tout ce qui était, ce n'est pas si mal. J’ai travaillé avec de nombreuses entreprises auparavant, et cela n’arrive généralement pas sur le lieu de travail, comme c’est habituellement le cas.
Donc, en dehors de tout ça ... C'est mon préféré:
J'utilise ceci pour mes propres affaires: time.strftime
from time import strftime
print(strftime('%Y%m%d_%H%M%S'))
Ce que je retourne: Année, Mois, Jour, _, Heure, Minute, Seconde
20180827_021106
Ce que j'utilise dans une fonction:
def _now():
"""The Module Reports A Formatted Time."""
ymd = (strftime('%Y%m%d_%H%M%S'))
return ymd
Juste quelque chose de simple qui garde mes journaux en ordre.