Day19 时间模块
2018-08-09 本文已影响0人
zhazhaK丶
01.时间模块
02.dateTime模块
01.时间模块
- 主要包含处理年月日时分秒对应的时间(着重时分秒)
import time
- 专门处理年月日
import datetime
1.获取当天时间
时间戳:从格林威治时间(1970年1月1日0:0:0)到当前时间的时间差(单位是秒)
1.存时间以时间戳的形式可以节省内存空间(一个浮点数的内存是4/8个字节,存一个字符串一个字符占2个字符)
2.自带对时间加密的功能
time1 = time.time()
print(time1,type(time1))
![](https://img.haomeiwen.com/i12046776/54d63ae25bc0c400.png)
2.将时间戳转换成struct_time
localtime(seconds)
参数seconds:
a.不传参,就是将当前时间对应的时间戳转换成stru_time
b.传参,就是将指定的时间转换成struct_time
time1 = time.localtime()
print(time1)
# 将时间戳转换成struct_time
struct1 = time.localtime(1000000)
print(struct1)
![](https://img.haomeiwen.com/i12046776/9467f0408ec51c36.png)
struct_time的结构:
tm_year:年
tm_mon:月
tm_mday:日
tm_hour:时
tm_min:分
tm_sec:秒
tm_wday:星期(0-6)
tm_yday:当前是当年的第几天
tm_isdst:是否是夏令时
print(time1.tm_year,time1.tm_mon,time1.tm_mday)
![](https://img.haomeiwen.com/i12046776/84cce1857ad686f3.png)
2.1 将struct_time转换成时间戳
'''2018-8-31 23:30:40'''
strc = time.strptime('2018-8-31 23:30:40', '%Y-%m-%d %H:%M:%S')
time1 = time.mktime(strc)
# 时间加一个小时
time1 += 3600
print(time.localtime(time1))
![](https://img.haomeiwen.com/i12046776/c4a82505b46b8f7e.png)
3.时间的格式转换
strftime(时间格式,时间)
将时间以指定的格式转换成字符串
time_str = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime())
print(time_str)
'''
strptime(需要转换的字符串,时间格式)
将时间字符串转换成相应的struct_timr
'''
struct_time = time.strptime('今天是2018年8月8号','今天是%Y年%m月%d号')
struct_time = time.strptime('2018-7-20','%Y-%m-%d')
print(struct_time)
# 4.延迟
'''
sleep(秒)
可以让线程阻塞指定的时间
'''
time.sleep(5)
![](https://img.haomeiwen.com/i12046776/34ea23c0da052e62.png)
02.dateTime模块
import datetime
1.日期类(date) -- 只能表示年月日
# 最小日期
print(datetime.date.min,type(datetime.date.min))
# 最大日期
print(datetime.date.max)
# 最小单位
print(datetime.date.resolution)
![](https://img.haomeiwen.com/i12046776/32fcba5626f7066e.png)
2.类方法
# 获取当前日期
today = datetime.date.today()
print(today)
# 将时间戳转换成日期
today2 = datetime.date.fromtimestamp(0)
print(today2)
date1 = datetime.date.fromordinal(100)
print(date1)
![](https://img.haomeiwen.com/i12046776/af2650bec4eea9f1.png)
3.对象属性
# 年(year)、月(month)、日(day)属性
print(today.year)
print(today.month)
print(today.day)
![](https://img.haomeiwen.com/i12046776/ddb914a8737cb30a.png)
4.对象方法
# 1.获取指定日期对应的日期
print(today.isoweekday())
# 2.将日期转换成 'Thu Aug 9 00:00:00 2018'格式
print(today.ctime())
# 3.将指定日期转换成指定格式的字符串日期
print(today.strftime('%Y-%m-%d-%w'))
# 4.将日期转换成struct_time
print(today.timetuple())
# 5.创建日期对象
print(datetime.date(1995,4,5))
![](https://img.haomeiwen.com/i12046776/e6a14c1b4f9bdc73.png)