Maison  >  Article  >  développement back-end  >  Le module time et le module datetime en Python

Le module time et le module datetime en Python

高洛峰
高洛峰original
2017-03-01 13:35:081209parcourir

module time

Le module time est une fonction qui contient diverses opérations sur le temps Bien que celles-ci soient souvent valides, toutes les méthodes ne sont pas valables sur toutes les plateformes d'utilisation de Time. struct_time Représente le temps

import time

# time.struct_time(tm_year=2015, tm_mon=4, tm_mday=24, 
          tm_hour=14, tm_min=17, tm_sec=26, 
          tm_wday=4, tm_yday=114, tm_isdst=0)
# 2015
print time.localtime()
print time.localtime().tm_year

Fonction

  • time.time() : renvoie a Timestamp

  • time.asctime([t]) : convertit le tuple ou struct_time renvoyé par gmtime() et localtime() en chaîne.

  • time.clock() : lorsqu'il est appelé pour la première fois, renvoie l'heure à laquelle le programme est en cours d'exécution. Après la deuxième fois, renvoie l'intervalle d'avant.

  • time.ctime. ([secs ]) : convertit l'horodatage en chaîne d'heure. Si elle n'est pas fournie, la chaîne d'heure actuelle est renvoyée, ce qui est la même que asctime(localtime()).

  • time. .gmtime([ secs]) : convertit l'horodatage en struct_time dans le fuseau horaire UTC.

  • time.localtime([secs]) : similaire à gmtime() mais le convertira en heure locale zone.

  • time.mktime(t) : Convertir struct_time en timestamp.

  • time.sleep(secs) : Le thread retarde le spécifié le temps, en secondes est l'unité.

  • time.strftime(format[,t]) : Convertissez un sturc_time ou un tuple en une chaîne selon les paramètres.

  • time.strptime(string[, format]) : Contrairement à strftime, renvoie un struct_time.

import time

# Fri Apr 24 06:39:34 2015
print time.asctime(time.gmtime())

# 0.0
# None
# 1.01136392961 因计算机而异
print time.clock()
print time.sleep(1)
print time.clock()

# Fri Apr 24 14:42:07 2015
print time.ctime()

# 2015-04-24
print time.strftime('%Y-%m-%d', time.localtime())
# 1429857836.0
print time.mktime(time.localtime())

heure Chaînes de format couramment utilisées dans les modules

  • %y année à deux chiffres 00 ~ 99.

  • % Y année à quatre chiffres Nombre d'années 0000 ~ 9999

  • %m mois 01 ~ 12.

  • %d jour 01 ~ 31.

  • %H heures 00 ~ 23.

  • %I heures 01 ~ 12.

  • % M minutes 00 ~ 59 .

  • %S secondes 00 ~ 61.

module datetime
datetime Le module fournit des opérations simples ou complexes sur les dates et les heures. Le module datetime fournit les types disponibles suivants (Types disponibles)

les constantes du module datetime.MINYEAR et datetime.MAXYEAR représentent la plage acceptée par). datetime

  • class datetime.date : une date idéalisée, fournissant les attributs année, mois, jour

  • class datetime.time : une heure idéalisée, fournissant l'heure, la minute, la seconde, la microseconde, tzinfo.

  • classe datetime.datetime : fournit l'année, le mois, le jour, l'heure, la minute, la seconde, la microseconde, tzinfo.

  • class datetime.timedelta : Exprimez la différence subtile entre deux dates, l'heure et la durée datetime.

  • class datetime.tzinfo : Heure Classe de base abstraite d'objet.

from datetime import timedelta, datetime

a = datetime.now()
b = timedelta(days=7)

# 7 days, 0:00:00
# 2015-04-14 16:02:39.189000
print b
print a - b

Parlons de la classe et des méthodes de classe en détail

classe de date

Un objet date représente une date idéale.

  class datetime.date(year, month, day)
    # All arguments are required. Arguments may be ints or longs.
    # 所有参数都是必须的. 参数可能是 int 或 long.
    MINYEAR <= year <= MAXYEAR
    1<= month <= 12
    1<= day <= number of days in the given month and year.(随着月份和年份)

Si le paramètre est en dehors de la plage donnée , cela lancera, valueError.

1. Méthode de classe>`date.today()` : renvoie la date locale actuelle, qui est équivalente à `date.fromtimestamp(time.time())`.
Renvoyer la date locale actuelle. Ceci équivaut à `date.fromtimestamp(time.time())`.

  from datetime import date

  # print 2015-04-21
  print date.today()

2. . date.fromtimestamp(timestamp) : renvoie la date locale en fonction de l'horodatage fourni. L'horodatage est souvent utilisé pour stocker les types d'heure

3. Méthode date.fromordinal(ordinal) : renvoie la date selon le calendrier grégorien fourni (Pas de description)

import time
from datetime import date

# 1429587111.21
# 2015-04-21
print time.time()
print date.fromtimestamp(time.time())
Attribut de classe

date.min : renvoie la date (MINYEAR, 1, 1).

  • date.max : Date de retour (MAXYEAR, 12, 31).

  • date.year : Année de retour, Entre MINYEAR et MAXYEAR

  • date.month : renvoie le mois, entre 1 et 12 mois

  • date.day : renvoie 1 à n Entre .

Méthode d'instance

d = date(2014, 4, 21)
# 2014 4 21
print d.year, d.month, d.day

date.replace(année, mois, day) : Renvoie un objet de données avec la même valeur, sauf que ces paramètres spécifient de nouvelles valeurs pour les mots-clés.

  • date.timetuple() : Renvoie un objet time.struct_time.

  • date.toordinal() : renvoie un objet Calendrier grégoien.

  • date.weekday() : renvoie le jour de la semaine lundi. est 0, dimanche est 6.

  • date.isoweekday() : renvoie le jour de la semaine le lundi est 1, dimanche est 7.

  • date.isocalendar() : renvoie un triplet (année ISO, numéro de semaine ISO, jour de la semaine ISO).
  • date.isoformat() : renvoie un 'AAAA-MM- La chaîne format de DD'.
  • date.ctime() : renvoie une chaîne date, d.ctime() est équivalent à time.ctime(time.mktime(d.timetuple( )) ).
  • date.strftime(format) : renvoie une date de chaîne avec un format personnalisé.

Classe datetime

d = date(2015, 4, 21)

# 2015-04-21
# 2015-04-21
# 2015-04-22
print d
print d.replace()
print d.replace(day=22)

# time.struct_time(tm_year=2015, tm_mon=4, tm_mday=21, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=111, tm_isdst=-1)
print d.timetuple()

# print 1
# print 2
print d.weekday()
print d.isoweekday()

# print 2015-04-21
print d.isoformat()

# print 21/04/2015
print d.strftime(&#39;%d/%m/%y&#39;)

L'objet datetime est un objet unique qui contient des informations sur tous les objets date et heure.

méthode de classe

class datetime.datetime(year, month, day[, hour
                    [, minute
                    [, second
                    [, microsecond
                    [, tzinfo]]]]])
  # The year, month and day arguments are required.
  MINYEAR <= year <= MAXYEAR
  1 <= month <= 12
  1 <= day <= n
  0 <= hour < 24
  0 <= minute < 60
  0 <= second < 60
  0 <= microsecond < 10**6

datetime.today() : renvoie la date/heure locale actuelle Avec tzinfo Aucun. Ceci est équivalent à datetime.fromtimestamp(time .time( )).

  • datetime.now([tz]): 返回当前本地日期和时间, 如果可选参数tz为None或没有详细说明,这个方法会像today().

  • datetime.utcnow(): 返回当前的UTC日期和时间, 如果tzinfo None ,那么与now()类似.

  • datetime.fromtimestamp(timestamp[, tz]): 根据时间戳返回本地的日期和时间.tz指定时区.

  • datetime.utcfromtimestamp(timestamp): 根据时间戳返回 UTC datetime.

  • datetime.fromordinal(ordinal): 根据Gregorian ordinal 返回datetime.

  • datetime.combine(date, time): 根据date和time返回一个新的datetime.

  • datetime.strptime(date_string, format): 根据date_string和format返回一个datetime.

  • from datetime import datetime
    
    # 2015-04-21 14:07:39.262000
    print datetime.today()
    
    # 2015-04-21 14:08:20.362000
    print datetime.now()
    
    # 1429596607.06
    # 2015-04-21 14:10:07.061000
    t = time.time() 
    print t
    print datetime.fromtimestamp(t)
    
    from datetime import datetime, date, time
    
    a = date(2015, 4, 21)
    b = time(14, 13, 34)
    
    # 2015-04-21 14:13:34
    print datetime.combine(a, b)

    实例方法

    • datetime.date(): 返回相同年月日的date对象.

    • datetime.time(): 返回相同时分秒微秒的time对象.

    • datetime.replace(kw): kw in [year, month, day, hour, minute, second, microsecond, tzinfo], 与date类似.

    其他方法可查看官方文档…

    from datetime import datetime, date, time
    
    td = date(2015, 4, 21)
    n = time(14, 28, 30)
    
    # 2099-04-21 14:30:42.103000
    print datetime.now(0.replace(year=2099)

    类属性

    • datetime.min: datetime(MINYEAR, 1, 1).

    • datetime.max: datetime(MAXYEAR, 12, 31, 23, 59, 59, 999999).

    实例属性(read-only)

    • datetime.year: 1 至 9999

    • datetime.month: 1 至 12

    • datetime.day: 1 至 n

    • datetime.hour: In range(24). 0 至 23

    • datetime.minute: In range(60).

    • datetime.second: In range(60).

    • datetime.microsecond: In range(1000000).

    time类

    time 代表本地(一天内)时间.

    class datetime.time([hour
              [, minute
              [, second 
              [, microsecond
              [, tzinfo]]]]])
      # All arguments are optional.
      # 所有参数都是可选的.
      0 <= hour < 24
      0 <= minute < 60
      0 <= second < 60
      0 <= microsesond < 10**6

    time类就是对时间的一些操作,其功能类似与datetime.其实date和time就是对datetime中日期和时间的操作.

    更多Python中的time模块与datetime模块相关文章请关注PHP中文网!

    Déclaration:
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn