time模块
time():浮点数,返回自纪元以来到现在的时间,以秒为单位。
>>> import time
>>> print(time.time())
1576805373.3153214
ctime():可以打印出人类可读格式
>>> importtime>>> print(time.ctime())
Fri Dec20 09:36:02 2019
>>> date1 =time.time()>>> date2 = date1 + 15
>>> print(time.ctime(date2))
Fri Dec20 09:37:44 2019
gmtime()函数以UTC格式返回当前时间。localtime()会返回应用了当前时区的当前时间。mktime()取一个struct_time实例,将他转换为浮点数表示。
>>> print(time.gmtime())
time.struct_time(tm_year=2019, tm_mon=12, tm_mday=20, tm_hour=2, tm_min=0, tm_sec=20, tm_wday=4, tm_yday=354, tm_isdst=0)>>> print(time.localtime())
time.struct_time(tm_year=2019, tm_mon=12, tm_mday=20, tm_hour=10, tm_min=0, tm_sec=40, tm_wday=4, tm_yday=354, tm_isdst=0)>>> print(time.mktime(time.gmtime()))1576778505.0
>>> print(time.ctime(time.mktime(time.gmtime()))) #返回的utc国际统一时间
Fri Dec 20 02:03:34 2019
>>> print(time.ctime(time.mktime(time.localtime()))) #返回的是CST时间即中国时间,与国际时间相差8小时
Fri Dec 20 10:06:06 2019
暂停程序(进程或者线程):
time.sleep(secs)
解析和格式化时间,strftime()和strptime()
>>> date = time.strftime('%Y-%m-%d')
>>> print(date) #此类型的date值为str2019-12-20
>>> date1 = time.strptime(date,'%Y-%m-%d') # 将date数据类型转换成元组格式>>> print(date1)
time.struct_time(tm_year=2019, tm_mon=12, tm_mday=20, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=354, tm_isdst=-1)
datetime:日期和时间值管理
1、时间
time()实例包含hour、minute、second、和microsecond属性,还可以包含时区信息。
2、日期
获取当前日期当前时间today(),与time.time()相同
>>> importdatetime>>> print(datetime.date.today())2019-12-20
>>> test =datetime.date.today()>>> print(test,type(test))2019-12-20
返回ctime()样式的字符串
>>> importdatetime>>> print(datetime.date.today())2019-12-20
>>> test =datetime.date.today()>>> print(test,type(test))2019-12-20
>>> test1 =test.ctime()>>> print(test1,type(test1))
Fri Dec20 00:00:00 2019
timetuple()返回时间元组,与time.localtime()兼容。
>>> test3 =test.timetuple()>>> print(test3)
time.struct_time(tm_year=2019, tm_mon=12, tm_mday=20, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=354, tm_isdst=-1)
toordinal(),返回日期是是自 0001-01-01 开始的第多少天
>>> test4 =test.toordinal()>>> print(test4)737413
day、month、year
>>> print(test.day)20
>>> print(test.month)12
>>> print(test.year)2019
fromtimestamp()时间戳本地日期,等同于time.time()
>>> importtime>>> test =time.time()>>> importdatetime
test1=datetime.date.fromtimestamp(test)>>> print(test1)2019-12-20
timedelta
通过对两个datetime对象完成算术运算,或者结合使用datetime和timedelta,可以计算出将来和过去的日期。将两个日期相减可以生成一个timedelta,还可以对某个日期增加或减去一个timedelta来生成另一个日期。timedelta的内部值按日、秒和微秒存储。
比较值
日期和时间值都可以使用标准比较操作符来比较,从而确定哪个在前,哪个在后。
>>> d1 =datetime.date.today()>>> print(d1)2019-12-20
>>> d2 = datetime.timedelta(days=1)>>> print(d2)1 day, 0:00:00
>>> d3 = d1 +d2>>> print(d3)2019-12-21