python怎么样获取当月有多少天?

zengna_com 2010-10-20 02:45:45
python怎么样获取当月有多少天?

比如这个月是10月,那么数据出31天
是2月的话,要看是28天还是29天?对应输出来。有什么方法吗
...全文
1339 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zengna_com 2010-10-21
  • 打赏
  • 举报
回复
谢谢大家,已经搞定
#coding:utf-8
#hbxcyz.cn
import datetime

def GetCurrentMonthDay(currentday):
currentMonth = currentday.strftime('%m')
currentYear = currentday.strftime('%Y')
d1 = datetime.datetime(int(currentYear),int(currentMonth),1)
d2 = datetime.datetime(int(currentYear),int(currentMonth)+1,1)
days = d2 - d1
day = days.days
return datetime.date(int(currentYear),int(currentMonth),1),\
datetime.date(int(currentYear),int(currentMonth),day)

if __name__ == "__main__":
for i in GetCurrentMonthDay(datetime.datetime.now()):
print i
guzl86 2010-10-20
  • 打赏
  • 举报
回复
除了2月,其他的月份的天数都是固定的吗。判断二月的话就判断是不是瑞年了。
angel_su 2010-10-20
  • 打赏
  • 举报
回复
自己算一下...
foolbirdflyfirst 2010-10-20
  • 打赏
  • 举报
回复
那用两个时间差相减应该也可以

>>> import datetime
>>> (datetime.datetime(2010,03,01) - datetime.datetime(2010,02,01)).days
28
zengna_com 2010-10-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 foolbirdflyfirst 的回复:]
Python code
>>> import calendar
>>> calendar.monthrange(2010,10)[1]
31
>>> calendar.monthrange(2010,2)[1]
28
[/Quote] 这个方法确实不错啊。但是我们模块要求用datetime模块实现
foolbirdflyfirst 2010-10-20
  • 打赏
  • 举报
回复
>>> import calendar
>>> calendar.monthrange(2010,10)[1]
31
>>> calendar.monthrange(2010,2)[1]
28

37,744

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧