文章目录
时间模块
python表示时间的方式:时间戳,格式化的时间字符串,时间的元组
时间戳:表示的是从1970年1月1日00:00:00开始按秒计算的偏移量(float类型)
UTC时区:0时区
time模块
时间戳:1561728551.968611
格式化的时间字符串
'2019-06-06/28/19 21:32:30'
时间的元组struct_time:示例
time.struct_time(tm_year=2019, tm_mon=6, tm_mday=28, tm_hour=21, tm_min=30, tm_sec=17, tm_wday=4, tm_yday=179, tm_isdst=0)
time.localtime([secs])
时间戳-》struct_time 当前地区的时区
默认参数为当前时间戳。
>>> time.localtime()
time.struct_time(tm_year=2019, tm_mon=6, tm_mday=28, tm_hour=21, tm_min=30, tm_sec=17, tm_wday=4, tm_yday=179, tm_isdst=0)
time.gmtime([secs])
时间戳-》struct_time UTC时区(0时区)
默认参数为当前时间戳。
>>> time.gmtime()
time.struct_time(tm_year=2019, tm_mon=6, tm_mday=28, tm_hour=13, tm_min=37, tm_sec=26, tm_wday=4, tm_yday=179, tm_isdst=0)
time.asctime()
struct_time-》特殊字符串时间格式
默认参数为当前时间元组struct_time
>>> time.asctime()
'Fri Jun 28 21:40:09 2019'
time.time()
返回当前时间的时间戳。
>>> time.time()
1561729525.1209352
time.mktime(t)
struct_time-》时间戳
>>> time.mktime((2019,6,28,13,37,26,4,179,0))
1561700246.0
time.sleep(secs)
线程推迟指定的时间运行。单位为秒。
>>> time.sleep(5)
#会停顿5s后执行后面程序
time.ctime([secs])
时间戳-》特殊字符串时间格式
>>> time.ctime(5)
'Thu Jan 1 08:00:05 1970'
time.strftime(format[, t])
时间的元组struct_time -》格式化的时间字符串
如果t未指定,将传入time.localtime()。
>>> time.strftime("%Y-%m-%d %X", time.localtime())
'2019-06-28 22:11:48'
注意:
%Y-%m-%d %H:%M:%S 年-月-日 时:分:秒
%x 06/22/19 显示日期
%X 22:50:54 显示时间
##time.strptime(string[, format])
格式化的时间字符串 -》 struct_time
>>> time.strptime('2019-06-28 22:11:48',"%Y-%m-%d %H:%M:%S")
time.struct_time(tm_year=2019, tm_mon=6, tm_mday=28, tm_hour=22, tm_min=11, tm_sec=48, tm_wday=4, tm_yday=179, tm_isdst=-1)
datetime模块
datetime.datetime.now()
返回当前的datetime日期类型
日期+时间
常用的属性有year, month, day,hour, minute, second
>>> datetime.datetime.now()
datetime.datetime(2019, 6, 28, 22, 26, 41, 989415)
>>> d.year,d.month,d.day,d.hour,d.month,d.second
(2019, 6, 28, 22, 6, 47)
datetime.date()
返回datetime类型日期
仅返回日期(年月日)
常用的属性有year, month, day
>>> date = datetime.date(2019,6,25)
>>> date.year,date.month,date.day
(2019, 6, 25)
>>> date.today()
datetime.date(2019, 6, 28)
datetime.time()
常用的属性有hour, minute, second, microsecond
>>> tm = datetime.time(3,15,6)
>>> tm.hour,tm.minute,tm.second
(3, 15, 6)
datetime.date.fromtimestamp()
时间戳 -》 datetime类型日期
仅有date日期
>>> datetime.date.fromtimestamp(5)
datetime.date(1970, 1, 1)
datetime.timedelta()
表示时间间隔,即两个时间点之间的长度。一般用于计算
传入参数默认为小时,可以传入的关键字参数有days,seconds,minutes,hours,weeks等
>>> datetime.datetime(2017, 10, 1,)+datetime.timedelta(days = 5)
datetime.datetime(2017, 10, 6, 0, 0)
>>> datetime.datetime.now() + datetime.timedelta(4)
datetime.datetime(2019, 7, 2, 22, 54, 11, 558423)
d.replace()
替换datetime类型的时间或日期
可以替换的参数有year,month,day,hour,minute等
>>> d = datetime.datetime.now()
>>> d.year,d.month,d.day,d.hour,d.month,d.second
(2019, 6, 28, 22, 6, 59)
>>> d.replace(day=10)
datetime.datetime(2019, 6, 10, 22, 57, 59, 353992)