Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist der Unterschied und die Verwendung zwischen Zeit und Datum/Uhrzeit in Python?

Was ist der Unterschied und die Verwendung zwischen Zeit und Datum/Uhrzeit in Python?

WBOY
WBOYnach vorne
2023-05-02 11:01:061228Durchsuche

1. Zwei Möglichkeiten zur Darstellung der Zeit in Python:

  • Zeitstempel: Offset in Sekunden relativ zu 1970.1.1 00:00:00, eindeutig

  • Zeittupel struct_time: 9 in Gesamtelementen> tm_year: Jahr 1- 12> tm_mon: Monat 1-12> tm_hour: Stunde 0-59> tm_sec: Sekunde 0-59> tm_day: Tag des Jahres 1-366> Ob es Sommerzeit ist, der Standardwert ist -1 Ich habe verstanden, dass datetime basierend auf der Zeit gekapselt ist und praktischere Funktionen bietet, die hauptsächlich die folgenden Kategorien umfassen:

timedelta: Wird hauptsächlich zur Berechnung von Zeitspannen verwendet.

time: Konzentrieren Sie sich nur auf die Zeit.

  • date: Nur Konzentrieren Sie sich auf das Datum

  • datetime: sowohl Uhrzeit als auch Datum

  • In der tatsächlichen Verwendung werden datetime.datetime und datetime.timedelta häufiger verwendet, während die anderen beiden datetime.date die tatsächliche Verwendung von datetime.time nicht viel anders als datetime.datetime.

  • 1.datetime.datetime
  • datetime.datetime wird nach der Instanziierung hauptsächlich die folgenden Attribute und gängigen Methoden haben:

     1. time.time() #当前时间戳, 没参数,唯一值
     2. time.sleep(secs) #暂停几秒
     3. time.gmtime(secs)  #无参得到当前格林尼治时间,有时间戳参数就转为格林尼治结构时间
     4. time.localtime(secs)  #无参得到local结构化时间, 有时间戳参数就转为local结构化时间
               print(time.localtime())  # time.struct_time(tm_year=2022, tm_mon=10, tm_mday=20, tm_hour=11, tm_min=20, tm_sec=44, tm_wday=3, tm_yday=293, tm_isdst=0)
               print(time.localtime(13912345678))  # time.struct_time(tm_year=2410, tm_mon=11, tm_mday=12, tm_hour=20, tm_min=27, tm_sec=58, tm_wday=4, tm_yday=316, tm_isdst=0)
     5. time.strftime(format, t) #将结构化时间转化为自定义的格式化时间 
               print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime()))  #北京时间
               print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()+60*60)))  #东京时间
     6. time.strptime(string, format) # 将自定义时间(字符串)转化为结构时间
               print(time.strptime("2023-1-11 1:2:3", "%Y-%m-%d %H:%M:%S")) # 将日常格式化时间转为结构化时间
               print(time.strptime("2023-1-11", "%Y-%m-%d")) # 将日常格式化时间转为结构化时间
     7. time.ctime(secs)  # 将一个时间戳转变为一个结构化时间
               print(time.ctime(123))  # Thu Jan  1 08:02:03 1970
               print(time.ctime(time.time() + 60 * 60))  # Thu Oct 20 11:28:32 2023
     8. time.mktime(t) # 将所给结构化时间转化为时间戳
               print(time.mktime(time.localtime(time.time())))  # 1666233100.0
               print(time.time())  # 1666233100.5075898  # 两行的效果是一样的
               # 求一个指定时间的时间戳
               print(time.mktime(time.strptime('2023-2-3', '%Y-%m-%d'))) # 1580659200.0
  • 2.datetime.timedelta

date.timedelta(3), gehe 3 Tage vorwärts

date.timedelta( - 3), 3 Tage zurückgehen

date.timedelta(hour = 3), 3 Stunden vorwärts gehen

date.timedelta(minutes = 3), 3 Minuten vorwärts gehen

time_now = datatime.datetime.now()  #实例化

datetime.year
datetime.month
datetime.day
datetime.hour
datetime.minute
datetime.second
datetime.microsecond
datetime.tzinfo():时区
datetime.date():返回date对象
datetime.time():返回time对象
datetime.replace(name=value)
datetime.timetuple():返回time.struct_time 对象
datetime.strftime(format):按照format进行格式化输出
#除了实例本身具有的方法,类本身也提供了很多好用的方法:

datetime.strptime(date_string,format): 给定时间格式解析字符串
datetime.now([tz]):当前时间默认 localtime
datetime.today():当前时间

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied und die Verwendung zwischen Zeit und Datum/Uhrzeit in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen