from datetime import datetime
date_object = datetime.strptime("29nov-2008","%d%b-%Y")
print "year- {0}, month- {1}, day- {2}, hour- {3}".format(date_object.year,date_object.month,date_object.day,
date_object.hour)
year- 2008, month- 11, day- 29, hour- 0
date_object = datetime.strptime('Jun 1 2005 1:33PM', '%b %d %Y %I:%M%p')
print "year- {0}, month- {1}, day- {2}, hour- {3}".format(date_object.year,date_object.month,date_object.day,
date_object.hour)
year- 2005, month- 6, day- 1, hour- 13
dobofclass=["1April2007",
"28th july 1984",
"05 May 1988",
"29nov-2008",
"1985-July-1"]
from dateutil.parser import parse
not_parsed=[]
for index,dob in enumerate(dobofclass):
try:
dobofclass[index]=parse(dob)
print dobofclass[index]
except:
not_parsed.append(index)
1984-07-28 00:00:00 1988-05-05 00:00:00 1985-07-01 00:00:00
for index in not_parsed:
print dobofclass[index]
1April2007 29nov-2008
dobofclass[not_parsed[0]] = datetime.strptime(dobofclass[not_parsed[0]], '%d%B%Y')
dobofclass[not_parsed[1]] = datetime.strptime(dobofclass[not_parsed[1]], '%d%b-%Y')
for dob in dobofclass:
print dob
2007-04-01 00:00:00 1984-07-28 00:00:00 1988-05-05 00:00:00 2008-11-29 00:00:00 1985-07-01 00:00:00
#Converting to Charachter
x=[23,56,78,89]
character=map(str ,x)
print character
numeric=map(int ,x)
print numeric
['23', '56', '78', '89'] [23, 56, 78, 89]
help(datetime.strptime)
Help on built-in function strptime: strptime(...) string, format -> new datetime parsed from a string (like time.strptime()).
Directive Meaning Example Notes %a Weekday as locale’s abbreviated name. Sun, Mon, ..., Sat (en_US); So, Mo, ..., Sa (de_DE) (1) %A Weekday as locale’s full name. Sunday, Monday, ..., Saturday (en_US); Sonntag, Montag, ..., Samstag (de_DE) (1) %w Weekday as a decimal number, where 0 is Sunday and 6 is Saturday. 0, 1, ..., 6 %d Day of the month as a zero-padded decimal number. 01, 02, ..., 31 %b Month as locale’s abbreviated name. Jan, Feb, ..., Dec (en_US); Jan, Feb, ..., Dez (de_DE) (1) %B Month as locale’s full name. January, February, ..., December (en_US); Januar, Februar, ..., Dezember (de_DE) (1) %m Month as a zero-padded decimal number. 01, 02, ..., 12 %y Year without century as a zero-padded decimal number. 00, 01, ..., 99 %Y Year with century as a decimal number. 1970, 1988, 2001, 2013 %H Hour (24-hour clock) as a zero-padded decimal number. 00, 01, ..., 23 %I Hour (12-hour clock) as a zero-padded decimal number. 01, 02, ..., 12 %p Locale’s equivalent of either AM or PM. AM, PM (en_US); am, pm (de_DE) (1), (2) %M Minute as a zero-padded decimal number. 00, 01, ..., 59 %S Second as a zero-padded decimal number. 00, 01, ..., 59 (3) %f Microsecond as a decimal number, zero-padded on the left. 000000, 000001, ..., 999999 (4) %z UTC offset in the form +HHMM or -HHMM (empty string if the the object is naive). (empty), +0000, -0400, +1030 (5) %Z Time zone name (empty string if the object is naive). (empty), UTC, EST, CST %j Day of the year as a zero-padded decimal number. 001, 002, ..., 366 %U Week number of the year (Sunday as the first day of the week) as a zero padded decimal number. All days in a new year preceding the first Sunday are considered to be in week 0. 00, 01, ..., 53 (6) %W Week number of the year (Monday as the first day of the week) as a decimal number. All days in a new year preceding the first Monday are considered to be in week 0. 00, 01, ..., 53 (6) %c Locale’s appropriate date and time representation. Tue Aug 16 21:30:00 1988 (en_US); Di 16 Aug 21:30:00 1988 (de_DE) (1) %x Locale’s appropriate date representation. 08/16/88 (None); 08/16/1988 (en_US); 16.08.1988 (de_DE) (1) %X Locale’s appropriate time representation. 21:30:00 (en_US); 21:30:00 (de_DE) (1) %% A literal '%' character. %
(dobofclass[not_parsed[0]]- dobofclass[not_parsed[1]]).days
0
print "Difference of {0} days between dob and current day ".format((datetime.today()-parse("23-November-1993")).days)
Difference of 8087 days between dob and current day
print "Difference of {0} months between dob and current day ".format((datetime.today()-parse("23-November-1993")).days/12)
Difference of 673 days between dob and current day
print "Difference of {0} years between dob and current day ".format((datetime.today()-parse("23-November-1993")).days/365)
Difference of 22 years between dob and current day