您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

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

5b51 2022/1/14 8:18:17 python 字数 7194 阅读 361 来源 www.jb51.cc/python

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

概述

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

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

import datetime
import time
import 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 yesterday
yesterday = 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 cal
calendar.setfirstweekday(calendar.SUNDAY) # 设置日历的第一天
cal = calendar.month(2015,12)
print cal

# 获取一年的日历
cal = calendar.calendar(2015)
print cal
cal = calendar.HTMLCalendar(calendar.MONDAY)
print cal.formatmonth(2015,12)

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

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

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

转义符对应意义如下

代码

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,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.0
time.time()取得当前时间;
time.localtime()取得本地时间;
time.strftime()格式化日期;
time.strptime(timeString)把字符串转化为日期;

判断输入的日期是星期几
>>> datetime.datetime(2011,02,15).weekday()
1
>>> datetime.datetime(2011,16).weekday()
2
>>> datetime.datetime(2011,17).weekday()
3
>>>
datetime模块获取当前时间
>>> datetime.datetime.utcNow()
datetime.datetime(2011,15,13,19,32,264194)
>>> datetime.datetime.utcNow().strftime("%Y-%m-%d %H:%M:%s") 格式化
'2011-03-15 13:19:27'
>>>

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

总结

以上是编程之家为你收集整理的Python时间模块datetime、time、calendar的使用方法全部内容,希望文章能够帮你解决Python时间模块datetime、time、calendar的使用方法所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶