计算一年中的天数

时间:2012-10-27 01:12:18

标签: python

  

可能重复:
  Python Question: Year and Day of Year to date?

Python中是否有方法可以确定一年中某一天的哪个月,例如今天是299天(10月26日)。我想弄清楚,第299天是在第10个月(编译字符串以设置Linux系统时间)。 我怎么能这样做?

2 个答案:

答案 0 :(得分:3)

print (datetime.datetime(2012,1,1) + datetime.timedelta(days=299)).month

这是一个更有用的版本,可以返回月份和日期:

def get_month_day(year, day, one_based=False):
    if one_based:  # if Jan 1st is 1 instead of 0
        day -= 1
    dt = datetime.datetime(year, 1, 1) + datetime.timedelta(days=day)
    return dt.month, dt.day

>>> get_month_day(2012, 299)
(10, 26)

答案 1 :(得分:1)

我知道没有这样的方法,但你可以这样做:

print datetime.datetime.strptime('2012 299', '%Y %j').month

以上打印10