首页 > 编程 > Python > 正文

Python时间模块datetime、time、calendar的使用方法

2020-01-04 17:51:21
字体:
来源:转载
供稿:网友
这篇文章主要介绍了Python时间模块的使用方法,主要包括三大模块datetime、time、calendar,感兴趣的小伙伴们可以参考一下
 

本文简单总结了一下Python处理时间和日期方面的模块,主要就是datetime、time、calendar三个模块的使用,希望这篇文章对于学习Python的朋友们有所帮助。

首先就是模块的调用,很多IDE都已经安装好了很多Python经常使用到的模块,所以我们暂时不需要安装模块了。

import datetimeimport timeimport calendar

1.获取到此时的准确时间

# 获取此时的时间print time.localtime()
//输出格式为:time.struct_time(tm_year=2015, tm_mon=12, tm_mday=29, tm_hour=1, tm_min=10, tm_sec=25, tm_wday=1, tm_yday=363, tm_isdst=0)

2.获取当天的日期

 # 获取当天的日期 print datetime.datetime.now() print datetime.date.today()

3.获取昨天的日期

# 获取昨天的日期def getYesterday(): today = datetime.date.today() oneday = datetime.timedelta(days=1) yesterday = today - oneday print type(today)  # 查看获取到时间的类型 print type(yesterday) return yesterdayyesterday = getYesterday()print "昨天的时间:", yesterday

4.获取n天以前的日期
这个应该就不用给出代码了吧,稍微想想就可以得出结果了。

5.字符串转换为时间和日期

# 字符串转换为时间def strTodatetime(datestr, format): return datetime.datetime.strptime(datestr, format)print time.strftime("%Y-%m-%d", time.localtime())print strTodatetime("2014-3-1","%Y-%m-%d")print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())print strTodatetime("2005-2-16","%Y-%m-%d")-strTodatetime("2004-12-31","%Y-%m-%d")

输出结果:
2015-12-29
2014-03-01 00:00:00
2015-12-29 01:10:25
47 days, 0:00:00

6.获取日历相关信息

# 获取某个月的日历,返回字符串类型cal = calendar.month(2015, 12)print calcalendar.setfirstweekday(calendar.SUNDAY) # 设置日历的第一天cal = calendar.month(2015, 12)print cal# 获取一年的日历cal = calendar.calendar(2015)print calcal = calendar.HTMLCalendar(calendar.MONDAY)print cal.formatmonth(2015, 12)

7.calendar模块还可以处理闰年的问题

# 判断是否闰年、两个年份之间闰年的个数print calendar.isleap(2012)print calendar.leapdays(2010, 2015)

针对Python时间模块datetime/time进行详细探讨。

转义符对应意义如下

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

代码:

import time import datetime   #两日期相减  d1 = datetime.datetime(2005, 2, 16) d2 = datetime.datetime(2004, 12, 31) print (d1 - d2).days  #运行时间:   starttime = datetime.datetime.now() endtime = datetime.datetime.now() print (endtime - starttime).seconds #计算当前时间向后10天的时间。 # 如果是小时 days 换成 hours   d1 = datetime.datetime.now() d3 = d1 datetime.timedelta(days =10)  print str(d3) print d3.ctime()time.ctime([sec])#把秒数转换成日期格式,如果不带参数,则显示当前的时间。 >>> import time>>> time.ctime()>>> "Wed Jun 14 15:02:50 2006">>> time.ctime(1138068452427683)"Sat Dec 14 04:51:44 1901" >>> import time>>> time.strftime("%Y-%m-%d %X",time.localtime())"2011-03-15 20:42:12">>> time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())"2011-03-15 20:03:47"DateTime模块----------------------------datetime 将日期转化为秒>>> import datetime,time>>> time.mktime(datetime.datetime(2009,1,1).timetuple())1230739200.0>>> cc=[2000,11,3,12,43,33] #Attributes: year, month, day, hour, minute, second>>> time.mktime(datetime.datetime(cc[0],cc[1],cc[2],cc[3],cc[4],cc[5]).timetuple())973226613.0time.time()取得当前时间;time.localtime()取得本地时间;time.strftime()格式化日期;time.strptime(timeString)把字符串转化为日期;判断输入的日期是星期几>>> datetime.datetime(2011,02,15).weekday()1>>> datetime.datetime(2011,02,15).weekday()1>>> datetime.datetime(2011,02,16).weekday()2>>> datetime.datetime(2011,02,17).weekday()3>>>datetime模块获取当前时间>>> datetime.datetime.utcnow()datetime.datetime(2011, 3, 15, 13, 19, 32, 264194)>>> datetime.datetime.utcnow().strftime("%Y-%m-%d %H:%M:%S") 格式化'2011-03-15 13:19:27'>>>

以上就是关于Python时间模块的详细学习,希望对大家学习Python程序设计有所帮助。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表