time模块
import time
"""
时间戳: 就是现在时间和格林威治时间(1970年1月1日00:00:00)的时间差(单位是秒)
1.存时间以时间戳的形式去存,可以节省内存空间(一个浮点数内存是4/8个字节,存一个字符串一个字符占2个字节)
2.自带对时间加密的功能
"""
if __name__ == '__main__':
t1 = time.time()
print(t1, type(t1))
# 2. 将时间戳转换成struct_time
"""
localtime(seconds)
参数seconds : a. 不传参, 就是将当前时间对应的时间戳转换成struct_time
b. 传参, 就是将指定时间转换成structt_time
struct_time的结构:
tm_year: 年
tm_mon: 月
tm_mday: 日
tm_hour: 时
tm_min: 分
tm_sec: 秒
tm_wday: 星期(0-6, 0>>星期一)
tm_yday: 当前是今年的第几天
tm_isdst: 是否夏令时
"""
t2 = time.localtime(0)
print(t2)
print(t2.tm_year, t2.tm_mon, t2.tm_mday, t2.tm_yday)
# 2.1 将struct_time转换成时间戳
strc = time.strptime('2018-8-31 23:30:54', '%Y-%m-%d %H:%M:%S')
time1 = time.mktime(strc)
time1 += 60*60
print('<<<', time.localtime(time1), '>>>')
# 3. 时间的格式转换
"""
strftime(时间格式, 时间)
将时间以指定的格式转换成字符串
"""
time_str = time.strftime('%Y %m %d %H:%M:%S %X %p', time.localtime())
print(time_str)
"""
strtime(需要转换的字符串,时间格式)
将时间字符转换成相应的struct_time
"""
struct_time = time.strptime('今天是2222-8-9', '今天是%Y-%m-%d')
print(struct_time)
# 4.延时
"""
sleep(秒)
可以让线程阻塞指定时间
"""
time.sleep(3)
print('==-=--')
datetime模块
import datetime
if __name__ == '__main__':
# 1. 日期类 -- 只能表示年月日
"""类的字段"""
print(datetime.date.min)
print(datetime.date.max)
print(datetime.date.resolution)
"""2.类方法"""
# 获取当前日期
today = datetime.date.today()
print(today)
# 将时间戳转换成日期
today2 = datetime.date.fromtimestamp(12345678)
print(today2)
"""3.对象属性"""
print(today.year)
print(today.month)
print(today.day)
"""4.对象方法"""
# 获取星期(0-6, 0->星期一)
print(today.weekday())
# 获取星期(1-7, 1->星期一)
print(today.isoweekday(),type(today.isoweekday()))
# 将日期转换成Thu Aug 9 00:00:00 2018格式
print(today.ctime())
# 日期转字符串
print(today.strftime('%Y-%m-%d '))
# 日期转struct_time
print(today.timetuple())
"""4.创建日期对象"""
print(datetime.date(2017, 5, 30))
# =======datetime类=====
t = datetime.datetime(2018, 5, 7, 6, 8, 56)
print(today+datetime.timedelta(127))