time模块
import time
# 目前开发中用时间标准时间 UTC
time.time() # 当前时间戳 1970 1 1到现在的秒数
c = time.time()
print(time.gmtime(c))
# time.struct_time(tm_year=2018, tm_mon=4, tm_mday=25, tm_hour=11, tm_min=30, tm_sec=46, tm_wday=2, tm_yday=115, tm_isdst=0)
print(time.gmtime(c)[3]) # 11
b = time.localtime(time.time()) # 返回一个本地时间的元组
m = time.mktime(b) # 将本地时间转为时间戳
# 格式化时间
# 时间元组格式化
print(time.asctime(time.localtime(time.time())))
# Wed May 2 22:34:10 2018 <class 'str'>
# 时间戳格式化
print(time.ctime(time.time()))
# 将时间元组转为指定格式的字符串
q = time.strftime('%Y-%m-%d',time.localtime(time.time()))
# 将时间字符串转为时间元组
w = time.strptime(q, '%Y-%m-%d')
'''
0 tm_year 2008
1 tm_mon 1 到 12
2 tm_mday 1 到 31
3 tm_hour 0 到 23
4 tm_min 0 到 59
5 tm_sec 0 到 61 (60或61 是闰秒)
6 tm_wday 0到6 (0是周一)
7 tm_yday 1 到 366(儒略历)
8 tm_isdst -1, 0, 1, -1是决定是否为夏令时的旗帜
%Y: 完整年份
%y: 简化的年份
%A: 完整的星期名称
%a: 简化的星期名称
%B:完整的月份名称
%c:本地时间用日期和时间表示
%d:一个月中的第几天
%H:小时数
%j:一年中的第几天
%M:分钟
%m:月份
%x: 本地相应的日期表示
'''
datetime模块
# datetime比time高级 datetime可以认为是time封装
# 获取当前时间
import datetime
d1 = datetime.datetime.now()
print(d1)
print(type(d1)) # <class 'datetime.datetime'>
# 获取指定时间
d2 = datetime.datetime(2011, 12, 21, 12, 12, 12, 233)
print(d2) # 2011-12-21 12:12:12.000233
# 将时间转为字符串
d3 = d1.strftime('%Y-%m-%d')
print(d3)
# 将字符串转为时间类型
d4 = datetime.datetime.strptime(d3,'%Y-%m-%d')
print(d4)
# 时间的运算
d5 = datetime.datetime.now()
d6 = datetime.datetime(2018, 4, 20, 14, 10, 12, 123)
d7 = d5 - d6
print(d7)
# 获取间隔天数
print(d7.days)
# 获取除天数以外的秒数
print(d7.seconds)
calendar模块
import calendar
cal = calendar.month(2016,1)
print(cal)
# 指定年份日历
# print(calendar.calendar(2018))
# 闰年返回True
print(calendar.isleap(2001))
# 返回某个月的开始的第一天的星期的下标,和所有的天数
print(calendar.monthrange(2018,4))
# 返回某个月以每周为元素列表
print(calendar.monthcalendar(2018,4))