时间管理-time模块,date模块,datetime模块

一、在正式学习时间管理之前,需要了解在系统中时间的集中显示形式,如下:

1)timestamp:时间戳,指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总毫秒数。

2)struct_time:结构体时间,示例:(tm_year=2013, tm_mon=10, tm_mday=11, tm_hour=11, tm_min=57, tm_sec=12, tm_wday=4, tm_yday=284, tm_isdst=0)。

3)format string:时间以特定格式的字符串显示。示例:“2018-12-14 11:00:00”

      二、time模块学习:

1)print("localtime时间显示:{0}".format(localtime()))

#

结果:localtime时间显示:time.struct_time(tm_year=2018, tm_mon=12, tm_mday=14,

tm_hour=11, tm_min=14, tm_sec=3, tm_wday=4, tm_yday=348, tm_isdst=0)

2)print("gmtime时间显示:{0}".format(gmtime()))


# 结果:gmtime时间显示:time.struct_time(tm_year=2018, tm_mon=12, tm_mday=14,

tm_hour=3, tm_min=15, tm_sec=25, tm_wday=4, tm_yday=348, tm_isdst=0)

  说明:localtime与gmtime都是将当前时间戳转化成结构体时间显示,但是可以看到tm_hour有区别,原因是:gmtime是0时区的时间,localtime是当前时区的时间。

3)t = localtime()

print("mktime时间显示:{0}".format(mktime(t)))

# 结果:mktime时间显示:1544757732.0

4)print(strftime('%Y-%m-%d %H:%M:%S', localtime())) # 结果:2018-12-14 11:25:11

5)print(strptime('2018-12-13 19:57:11','%Y-%m-%d %H:%M:%S'))

# 结果:time.struct_time(tm_year=2018, tm_mon=12, tm_mday=13, tm_hour=19,

tm_min=57, tm_sec=11, tm_wday=3, tm_yday=347, tm_isdst=-1)

6)sleep(2)

   # 睡眠2秒

7)time()

  # 获取时间戳

8)print(ctime())

   # 结果:Fri Dec 14 11:37:16 2018

9)总结,三种时间类型的转换关系,如下:

  struct_time--》timestamp(mktime函数)

  timestamp--》struct_time(localtime,gmtime函数)

  struct_time--》format string(strftime函数)

  format string--》struct_time(strptime函数)

  三、date模块

1)print(date.today())

# 结果:2018-12-14

2)d =date.today()

print(d.year)

print(d.month)

print(d.day)

print(d.weekday())

3)d2 = d.replace(2018,12,15)

print(d2)

  四、datetime模块

1)d = datetime.now()

print(d)

# 当前时间

d1 = d - timedelta(days=1)

print(d1)

# 日期减一

d2 = d + timedelta(days=1)

print(d2)

# 日期加1

d3 = d + timedelta(hours=1)

print(d3)

# 时间减一

你可能感兴趣的:(时间管理-time模块,date模块,datetime模块)