Pergunta

Eu tenho um valor de ano e um dia do ano e gostaria de converter para uma data (dia / mês / ano).

Obrigado antecipadamente. :)

Foi útil?

Solução

datetime.datetime(year, 1, 1) + datetime.timedelta(days - 1)

Outras dicas

>>> import datetime
>>> datetime.datetime.strptime('2010 120', '%Y %j')
datetime.datetime(2010, 4, 30, 0, 0)
>>> _.strftime('%d/%m/%Y')
'30/04/2010'

O toordinal() e funções fromordinal() da classe date poderia ser usado:

from datetime import date
date.fromordinal(date(year, 1, 1).toordinal() + days - 1)
>>>import datetime
>>>year = int(input())
>>>month = int(input())
>>>day = int(input())
data = datetime.datetime(year,month,day)
daynew = data.toordinal()
yearstart = datetime.datetime(year,1,1)
day_yearstart = yearstart.toordinal()
print ((daynew-day_yearstart)+1)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top