模块-时间管理:time 和 datetime

1、import time

时间分为三种格式

1.1、时间戳

# 时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型。
print(time.time())
# 1617280797.3197777 

1.2、格式化的字符

print(time.strftime('%Y-%m-%d %H:%M:%S'))
# 2021-04-01 20:41:03

1.3、结构化的事件对象

obj = time.localtime()
print(obj.tm_year) # 2021 返回年
print(obj.tm_wday) # 3 # 一周的第几天
print(time.localtime()) # 北京时间为准 time.struct_time(tm_year=2021, tm_mon=4, tm_mday=1, tm_hour=20, tm_min=41, tm_sec=26, tm_wday=3, tm_yday=91, tm_isdst=0)
print(time.gmtime()) # 世界标准时间 time.struct_time(tm_year=2021, tm_mon=4, tm_mday=1, tm_hour=12, tm_min=41, tm_sec=26, tm_wday=3, tm_yday=91, tm_isdst=0)

1.4、时间之间的转换:

模块-时间管理:time 和 datetime

import time

# 时间分为三种格式(三种格式时化间是可以互相转换的)
# 1、时间戳  
print(time.time())
# 1609942223.1627667

# 2、格式化的字符串
print(time.strftime('%Y-%m-%H'))
# 2021-01-22

# 3、结构化的时间
res = time.localtime() # 东八区,中国时间
print(res)
# time.struct_time(tm_year=2021, tm_mon=1, tm_mday=6, tm_hour=22, tm_min=12, tm_sec=33,
#                           年      月     这个月的第几天    小时        分钟        秒
# tm_wday=2, tm_yday=6, tm_isdst=0)
# 0开始排星期  一年的第几天   冬令时

res2 = time.gmtime()  # 世界标准时间
print(res2)
# time.struct_time(tm_year=2021, tm_mon=1, tm_mday=6, tm_hour=14, tm_min=12, tm_sec=33, 
# tm_wday=2, tm_yday=6, tm_isdst=0)

print(res.tm_year)  # 单独获取时间的某一部分 哪一年
print(res.tm_mday)  # 单独获取时间的某一部分 哪一天


# 三种格式化之间的互相转换
print(time.localtime(33331313))  # 时间戳转结构化的时间
print(time.gmtime(33331313))     # 时间戳转成世界标准时间

print(time.mktime(time.localtime())) # 结构化的时间转时间戳

res = time.strftime("%Y-%m",time.localtime()) # 结构化时间转格式化时间
print(res)

print(time.strptime("2017-11-11 11:11:11","%Y-%m-%d %H:%M:%S")) # 格式化时间转结构化时间


print(time.asctime())  # 以这种时间格式排列显示时间,常见于linux,unix操作系统
# 字符格式化
print(time.asctime())
# Thu Apr  1 21:17:57 2021
print(time.ctime())
# Thu Apr  1 21:17:57 2021

2、datetime模块

import datetime

print(datetime.datetime.now())  # 现在时间
# 2021-01-06 22:33:44.950552

print(datetime.datetime.now() + datetime.timedelta(days=3.5)) # 三天半后的时间
# 2021-01-10 10:33:44.950552

print(datetime.datetime.now() - datetime.timedelta(days=3.5)) # 三天半前的时间
# 2021-01-03 10:33:44.950552

# 特点:可以参与时间运算
start = datetime.datetime.now()
time.sleep(3)
end = datetime.datetime.now()
res = end-start
print(res)
# 0:00:03.002044
print(res.seconds)
# 3 获得时间差,单位为秒


res = datetime.datetime.now()
res1 = res + datetime.timedelta(minutes=3) # 3分钟后的时间,参数可以更改
print(res)
print(res1)
if res<res1:
    print('未来时间')
else:
    print('过去时间')
time和datetime:
import time
import datetime
now = time.time() # 获得时间戳
print(now)
jgou = time.localtime(now)  # 时间戳转结构化
print(jgou)
msg = time.strftime('%Y%m%d %H%M%S',jgou)  # 结构化转字符格式化
print(msg)
now1 = datetime.datetime.strptime(msg,'%Y%m%d %H%M%S')  # 字符格式化转datetime
print(now1)
jiegou =  now1.timetuple() # datetime转结构化
print(jiegou)
now_time = time.mktime(jiegou) # 结构化转时间戳
print(now_time)
上一篇:Python - 日志管理


下一篇:navicate怎么快速写数据库设计文档