一、time模块
1). 在Python中表示时间的方式
- 时间戳
- 格式化的时间字符串
- 结构化时间:Python中使用一元组定义时间的相关属性,与特定平台相关
2). 时间相关定义
- UTC: 格林威治天文时间,世界标准时间。在中国为UTC+8。
- DST:夏令时。
- 时间戳(timestamp):1970年1月1日00:00:00开始按秒计算的偏移量。 (Python中的时间戳类型为浮点数)
import time
a = type(time.time())
print(a) # <class 'float'>
3). time模块的内置方法
import time
- 获得/转换为结构化元组时间
import time
a = time.gmtime() # UTC 获得结构化元祖时间
b = time.gmtime(123456) # 指定时间戳转换为元组时间
c = time.localtime() # UTC+8(中国) 结构化时间元组
d = time.localtime(1234)
'''
time.struct_time(tm_year=2019,
tm_mon=12,
tm_mday=21,
tm_hour=13,
tm_min=40,
tm_sec=55,
tm_wday=5,
tm_yday=355,
tm_isdst=0)
'''
- 获得时间戳
a = time.time() # 本地时间戳
b = time.mktime(time.gmtime()) # UTC 获取时间戳,浮点数
c = time.mktime(time.localtime()) # UTC + 8(中国) 获取时间戳,浮点数
- 获得/转换标准结构化时间字符串(欧美风格)
a = time.ctime()
b = time.asctime()
# Sat Dec 21 21:52:15 2019
a = time.ctime(1223334456) # 转换时间戳为字符串时间
b = time.asctime(time.localtime()) # 转换时间元组为祖符串时间
- 线程睡眠指定时间
time.sleep(0.5) # 单位 秒
- 将元组时间转换为字符串时间
a = time.strftime("%Y-%m-%d %X", time.localtime())
- 将字符串时间转换为元组时间
c = time.strptime("2017-10-27", "%Y-%m-%d")
二、datetime模块
1). datetime模块的常用内置方法
import time, datetime
d = datetime.datetime.now() # 返回当前的datetime日期类型
a = d.timestamp() # 时间戳 1576937905.999808
b = d.today() # 字符串 2019-12-21 22:18:32.300895
c = d.year # 2019
e = d.timetuple() # 元组时间
f = datetime.date.fromtimestamp(time.time()) # 把一个时间戳转为datetime日期类型
2). 时间运算
a = datetime.datetime.now() + datetime.timedelta(4) # 当前时间+4天
b = datetime.datetime.now() + datetime.timedelta(hours=4) # 当前时间+4小时
"""时间替换"""
d = datetime.datetime.now() # 返回当前的datetime日期类型
d.replace(year=2018,month=2,day=2,hour=12,minute=12,second=12)
网友评论