前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python--模块之time,date

python--模块之time,date

作者头像
py3study
发布2020-01-19 16:07:36
5240
发布2020-01-19 16:07:36
举报
文章被收录于专栏:python3

time:

表示时间的三种方式: 时间戳、格式化的时间字符串、元组 时间戳是计算机能够识别的时间; 时间字符串是我们能够看懂的时间; 元组是用来操作时间;

导入时间模块 import time

1,时间戳(timastamp):时间戳表示的是从1970年1月1日00:00:00开始来按秒计算的偏移量。我们运行‘type(time.time)’,返回的是float类型

print(time.time()) >>1537960114.8479772

2,格式化的时间字符串(format string):'2019-09-23'

print(time.strftime('%y-%m-%d %X')) >>18-09-26 19:10:32

%y 两位数的年份表示(00-99) %Y 四位数的年份表示(000-9999) %m 月份(01-12) %d 月中的一天(01-31) %H 24小时制小时数(01-24) %I 12小时制小时数(01-12) %M 分钟数(00-59) %S 秒(00-59) %a 本地简化星期名称 %A 本地完整星期名称 %b 本地简化的月份名称 %B 本地完整的月份名称 %c 本地相应的日期表示和时间表示 %j 年内的一天(001-366) %p 本地A.M.或P.M.的等价符 %w 星期(0-6),星期天为星期的开始 %W 一年中星期数(00-53)星期一为星期的开始 %x 本地相应的日期表示 %X 本地日期的时间表示 %% %号的本身

3,元组(struct_time): localtime将一个时间戳转换为当前时区的struct_time 共有你9个元素:

print(time.localtime()) >>time.struct_time(tm_year=2018, tm_mon=9, tm_mday=26, tm_hour=19, tm_min=12, tm_sec=15, tm_wday=2, tm_yday=269, tm_isdst=0)

tm_year(年) :2018 tm_mon(月) :1-12 tm_mday(日) :1-31 tm_hour(时) :0-23 tm_min(分):0-59 tm_sec(秒) :0-60 tm_wday(一周的第几天):0-6(0表示周一) tm_yday(一年中的第几天):1-366 tm_isdst(是否夏令时):默认为0

time 时间格式相互转换:

时间戳---》元组时间

time.gmtime(时间戳) time.localtime(时间戳)

结构化时间---》》时间戳 #time.mktime(结构化时间)

结构化时间---》》字符串时间 #time.strftime("格式定义","结构化时间") 结构化时间参数若不传,则显示当前时间

字符串时间----》》结构化时间 #time.strptime(时间字符串,字符串对应格式)

结构化时间-----》》%a %b %d %H:%M:%S %Y串 #time.asctime(结构化时间) #如果不传参数,直接返回当前时间的格式化串

时间戳-----》》%a %b %d %H:%M:%S %Y串

时间戳---》元组时间 time.gmtime(时间戳) time.localtime(时间戳)

import time

print(time.time()) print(time.gmtime(1537960993.1141999))

print(time.localtime())

>>time.struct_time(tm_year=2018, tm_mon=9, tm_mday=26, tm_hour=11, tm_min=23, tm_sec=13, tm_wday=2, tm_yday=269, tm_isdst=0) >>time.struct_time(tm_year=2018, tm_mon=9, tm_mday=26, tm_hour=19, tm_min=25, tm_sec=20, tm_wday=2, tm_yday=269, tm_isdst=0)

结构化时间---》》时间戳 #time.mktime(结构化时间)

time_tuple = time.localtime(1500000000) print(time_tuple) print(time.mktime(time_tuple))

>>time.struct_time(tm_year=2017, tm_mon=7, tm_mday=14, tm_hour=10, tm_min=40, tm_sec=0, tm_wday=4, tm_yday=195, tm_isdst=0) >>1500000000.0

结构化时间---》》字符串时间 #time.strftime("格式定义","结构化时间") 结构化时间参数若不传,则显示当前时间

print(time.strftime("%Y-%m-%d %X"))

print(time.strftime("%Y-%m-%d %X",time.localtime(150000000)))

>>2018-10-11 19:03:29 >>1974-10-03 10:40:00

字符串时间----》》结构化时间 #time.strptime(时间字符串,字符串对应格式)

print(time.strptime("2017-03-16","%Y-%m-%d"))

>>time.struct_time(tm_year=2017, tm_mon=3, tm_mday=16, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=75, tm_isdst=-1)

结构化时间-----》》%a %b %d %H:%M:%S %Y串 #time.asctime(结构化时间) #如果不传参数,直接返回当前时间的格式化串

print(time.asctime(time.localtime(1500000000))) print(time.asctime())

>>Fri Jul 14 10:40:00 2017 >>Thu Oct 11 19:13:46 2018

时间戳-----》》%a %b %d %H:%M:%S %Y串

#time.ctime(时间戳) 如果不传参数,直接返回当前时间的格式化串

print(time.ctime()) print(time.ctime(1500000000))

>>Thu Oct 11 19:17:23 2018 >>Fri Jul 14 10:40:00 2017

datetime:

简介: datetime包是基于time包的一个高级包,datetime可以理解为date和time两个组成部分。date是指年月日构成的日期(相当于日历),time是指时分秒构成的一天24小时中的具体时间(相当于手表)。

datetime.datetime()内有如下属性: hour:小时 minute:分钟 second:秒 microsecond:微妙 year:年 month:月 day:日 weekday:表示周几

import datetime

t=datetime.datetime(2012,9,3,21,30) print(t)

>>2012-09-03 21:30:00

运算: datetime包还定义了时间间隔对象(timedelta)。一个时间点(datetime)加上一个时间间隔(timedelta)可以得到一个新的时间点(datetime)。

比如:今天的上午3点加上5个小时得到今天的上午8点。同理,两个时间点相减会得到一个时间间隔

t=datetime.datetime(2012,9,3,21,30) t_next=datetime.datetime(2012,9,5,21,30)

delta1=datetime.timedelta(seconds=600) delta2=datetime.timedelta(weeks=3) print(t) print(t+delta1) print(t+delta2) print(t_next-t)

>>2012-09-03 21:30:00 >>2012-09-03 21:40:00 >>2012-09-24 21:30:00 >>2 days, 0:00:00

两个datetime对象还可以进行比较。 print(t > t_next) >>False

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/03/16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档