开发者

Convert date to months and year

From the following dates how to get months and year using python

dates are

           "2011-07-01 09:26:11"   //This showud display  as "This month"
           "2011-06-07 09:26:11"   //Thi开发者_Python百科s should display as June            
           "2011-03-12 09:26:11"   //This should display as March            
           "2010-07-25 09:26:11"   // Should display as last year

Please let me know how to get these formats using python 2.4

When I have a date variable[with same format] in pandas dataframe, how to perform this ?


import time
import calendar

current = time.localtime()

dates = ["2011-07-01 09:26:11", "2011-06-07 09:26:11", "2011-03-12 09:26:11", "2010-07-25 09:26:11"]

for date in dates:
    print "%s" % date
    date = time.strptime(date, "%Y-%m-%d %H:%M:%S")

    if date.tm_year == current.tm_year - 1:
        print "Last year"    

    elif date.tm_mon == current.tm_mon:
        print "This month"

    else:
        print calendar.month_name[date.tm_mon]

Should do roughly what you ask for.


from datetime import datetime
a = datetime.strptime('2011-07-01 09:26:11', '%Y-%m-%d %H:%M:%S')
if a.month == datetime.now().month:
    print 'This month'

The other results according to http://docs.python.org/library/datetime.html


Good site for python date/time conversions: http://www.saltycrane.com/blog/2008/11/python-datetime-time-conversions/


You could use datetime.strptime to paste the date. But for simple case like yours, i would just use regex.

>>>> import re
>>>> re.match('^(\d+)-(\d+)', "2011-07-01 09:26:11").groups()
('2011', '07')
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜