2017-02-20 3 views
0

Я пытаюсь преобразовать строку в объект даты и времени ...преобразования строки в объект даты и времени в Python

time = '10:00:00' 
date = '2016-10-03' 
date = date + ' ' + time 
print date 
date = datetime.strptime(date, '%Y-%m-%d %H:%M:%y') 
print date 

это печатает:

2016-10-03 10:00:00 
2000-10-03 10:00:00 

по какой-то причине он изменяет год дата ..

когда я делаю:

date = '2016-10-03' 
date = datetime.strptime(date, '%Y-%m-%d') 
print date 

Он работает правильно, и я получаю:

2016-10-03 

Как прийти, когда я добавить время там она меняется год?

Благодаря

+1

Сумма% y в конце должна составлять% S -> секунды, а не год. @McGrady избил меня! Ура! –

ответ

5

Попробуйте это:

time = '10:00:00'          
date = '2016-10-03'          
date = date + ' ' + time         
print date            
print datetime.strptime(date, '%Y-%m-%d %H:%M:%S')  

% у Года без веков как нулей десятичного числа.
% Y Год со столетием как десятичное число.

Кажется, что вы только что сделали орфографическую ошибку. Возможно, вы хотите, чтобы вы %Y-%m-%d %H:%M:%S'.

См. Более подробную информацию от datetime Python. Надеюсь, это поможет.

+0

ошибка новичков !! Благодаря! – nrs90

+0

@ nrs90, если это был ответ, можете ли вы его принять? дает ответчик больше репутации, и тогда этот вопрос отмечен как решенный – WhatsThePoint

+0

@McGrady thats done, thanks. – nrs90

Смежные вопросы