python中的时间模块
废话不多说,看代码
import datetime,time import calendar #时间戳 t1 = time.time() print('当前时间戳是{}'.format(t1)) #格式化日期,time模块 t2 = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()) print('当前格式化时间是%s'%t2) #获取日历 m = calendar.month(2019,12) print('2019年12月份的日历如下:') print(m) #获取当前的格式化时间,datetime模块 d = datetime.datetime.now().weekday() #生成今天是星期几的函数 def get_w(date): week = { 0:'星期一', 1:'星期二', 2:'星期三', 3:'星期四', 4:'星期五', 5:'星期六', 6:'星期日' } return week.get(date) print('今天是%s'%get_w(d))
操作时间的模块是time;datetime
表示时间的方式有两种1.是格式化好的时间例如(2019-10-21),2.是时间戳(1571587200),规律是每一秒钟+1,是从计算机诞生的那一秒开始计算
时间戳和格式化好的时间互相转换需要经过“时间元组”,每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示
时间戳转格式化的时间
def timestamp_to_time(timestamp=None,format='%Y-%m-%d %H:%M:%S'):#传入一个时间戳 '''默认生成当前格式化时间(不传的情况下)''' if timestamp: time_tuple = time.localtime(timestamp)#以当前时区的时间转换成时间元组 # time_tuple = time.gmtime(timestamp)#以标准时区的时间转换成时间元组 result = time.strftime(format,time_tuple)#传入时间元组并生成格式化的时间 return result else: result = time.strftime(format)#默认是当前的格式化时间 return result print('生成的格式化时间为:%s'%(timestamp_to_time()))#调用转换函数,生成格式化的时间
格式化时间转时间戳
def str_to_timestamp(string=None,format='%Y-%m-%d %H:%M:%S'): '''格式化好的字符串转时间戳,默认返回当前时间戳''' if string: time_tuple = time.strptime(string, format) # 格式化好的时间,转时间元组的 result = time.mktime(time_tuple) # 把时间元组转成时间戳 else: result = time.time() return int(result)