python對時間日期做格式化
>>> import datetime
>>> dir(datetime)
['MAXYEAR', 'MINYEAR', '__doc__', '__file__', '__name__', '__package__', 'date', 'datetime', 'datetime_CAPI', 'time', 'timedelta', 'tzinfo']
>>> datetime.datetime.now()
datetime.datetime(2015, 5, 11, 17, 29, 14, 476759)
Python格式化日期時間的函式為datetime.datetime.strftime()
由字串轉為日期型的函式為:datetime.datetime.strptime(),兩個函式都涉及日期時間的格式化字串,列舉如下:
%a |
Abbreviated weekday name |
%A |
Full weekday name |
%b |
Abbreviated month name |
%B |
Full month name |
%c |
Date and time representation appropriatefor locale |
%d |
Day of month as decimal number (01 - 31) |
%H |
Hour in |
%I |
Hour in 12-hour format (01 - 12) |
%j |
Day of year as decimal number (001 - 366) |
%m |
Month as decimal number (01 - 12) |
%M |
Minute as decimal number (00 - 59) |
%p |
Current locale's A.M./P.M. indicator for 12-hour clock |
%S |
Second as decimal number (00 - 59) |
%U |
Week of year as decimal number,with Sunday as first day of week (00 - 51) |
%w |
Weekday as decimal number (0 - 6;Sunday is 0) |
%W |
Week of year as decimal number,with Monday as first day of week (00 - 51) |
%x |
Date representation for current locale |
%X |
Time representation for current locale |
%y |
Year without century, as decimal number (00 - 99) |
%Y |
Year with century, as decimal number |
%z,%Z |
Time-zone name or abbreviation; no characters if time zone is unknown |
%% |
Percent sign |
舉一個例子:
ebay中時間格式為‘Sep-21-09 16:34’
則通過下面程式碼將這個字串轉換成datetime
>>> c = datetime.datetime.strptime('Sep-21-09 16:34','%b-%d-%y %H:%M');
>>> c
datetime.datetime(2009, 9, 21, 16, 34)
又如:datetime轉換成字串
>>> datetime.datetime.now().strftime('%b-%d-%y %H:%M:%S')
'May-11-15 17:29:29'