Python time datetime模块

mac2022-06-30  97

导入与时间相关的模块timeimport timeprint time.time()输出的结果是:1279578704.6725271

1、time.asctime()格式化时间获取可读的时间模式的函数是asctime()print time.asctime( time.localtime() )输出结果:Thu Aug 18 14:04:03 2016

2、time.localtime()格式化时间戳上面得到的一连串的数字不是我们想要的结果,我们可以利用time模块的格式化时间的方法来处理:time.localtime(time.time())用time.localtime()方法,作用是格式化时间戳为本地的时间。输出的结果是:time.struct_time(tm_year=2016, tm_mon=7, tm_mday=19, tm_hour=22, tm_min=33, tm_sec=39, tm_wday=0, tm_yday=200, tm_isdst=0)得到某一特定的项:time.struct_time.tm_year

3、time.strftime()将格式化后的时间戳以字符串输出现在看起来更有希望格式成我们想要的时间了。time.strftime('%Y-%m-%d',time.localtime(time.time()))把刚才的一大串信息格式化字符串输出,现在的结果是:2016-07-19time.strftime里面有很多参数,可以让你能够更随意的输出自己想要的东西:下面是time.strftime的参数:strftime(format[, tuple]) -> string将指定的struct_time(默认为当前时间),根据指定的格式化字符串输出python中时间日期格式化符号:%y 两位数的年份表示(00-99)%Y 四位数的年份表示(000-9999)%m 月份(01-12)%d 月内中的一天(0-31)%H 24小时制小时数(0-23)%I 12小时制小时数(01-12) %M 分钟数(00=59)%S 秒(00-59)

4、time.strptime()# 将格式字符串转换为时间戳。可以获取.year .month .day 等信息b = '2016-06-28 18:02'print datetime.strptime(b, '%Y-%m-%d %H:%M')print type(b)输出结果:2016-06-28 18:02:00<type 'datetime.datetime'>

5、时间差计算需要先把字符串时间或时间戳转换成datetime.datetime类型b = '2016-06-28 18:02'print datetime.now(). - datetime.strptime(b, '%Y-%m-%d %H:%M')>>>27 days, 19:03:42.414000

注意:datetime.datetime单独的时间字段.day .month等相减得到的值都是相对结果!b = '2016-06-28 18:02'c = '2016-02-25 18:02'print datetime.strptime(b, '%Y-%m-%d %H:%M').day - datetime.strptime(c, '%Y-%m-%d %H:%M').day>>> 3 明显结果是不对的!

转载于:https://www.cnblogs.com/chandb/p/7427548.html

最新回复(0)