Python datetime в обратном порядке - PullRequest
1 голос
/ 19 апреля 2011
y=(datetime.datetime.now() ).strftime("%y%m%d")

дает '110418'

У меня есть данные, которые читают '110315' и '110512', не пытаясь их создать

Как мне изменить '110418' на дату, чтобы я мог вычесть

от '2011-07-15' (стр.)

import datetime

t = datetime.datetime.today()
print type(t)

tdate =datetime.datetime.strptime('110416', '%y%m%d') 
print type(tdate)

d =t-tdate
print d  

дает мне

3 days, 15:14:38.921000

Мне нужно только "3".

Ответы [ 2 ]

3 голосов
/ 19 апреля 2011

Я не совсем уверен, что понял ваш вопрос, но если вы хотите разобрать строку в объект времени, вы можете использовать strptime:

import time
time.strptime('2011-07-15', '%Y-%m-%d')
2 голосов
/ 19 апреля 2011

Вы можете преобразовать любое строковое представление в объект datetime, используя метод strptime.

Вот пример преобразования вашей строки в объект datetime:

import datetime

my_date = datetime.datetime.strptime('2011-07-15', '%Y-%m-%d')

Теперь у вас будет объект datetime, который можно естественным образом вычесть из других объектов datetime.

Если вы вычитаете две даты, Python создает объект datetime.timedelta. Затем вы можете убрать все это до нескольких дней, выполнив print d.days в вашем примере выше.

Для получения дополнительной информации о том, что вы можете сделать с библиотекой datetime, см .: http://docs.python.org/library/datetime.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...