Bom hoje vamos dar uma olhada no básico sobre datas no Python, para isso vamos dar uma olhada nos modulos time e datetime
Primeira questão referente a data que podemos levantar é qual a data de hoje??
então vamos ver como fazemos pra retornar a data atual:
>>> >>> from datetime import date >>> today = date.today() >>> print "A data de hoje é %s" % today A data de hoje é 2009-12-03 >>> >>> today.year 2009 >>> today.month 12 >>> today.day 3 >>>
Hum, tá começando a ficar interessante..
vejam só o timetuple come ele temos uma maneira interessante de acessar os mesmos dados acima mas em uma tupla..
>>> today.timetuple() (2009, 12, 3, 0, 0, 0, 3, 337, -1)
Ok digamos que eu queira saber quantos dias já se passaram esse ano?
fácil é o oitavo carinha da nossa tupla, então pra acessar podemos fazer simplesmente assim:
>>> today.timetuple()[7] 337 >>>
Ué mas eu não tinha dito o oitavo item?
sim disse mas lembrem-se que uma tupla assim como uma lista em python é indexada em 0!
podemos aproveitar agora pra formatar a saida de uma data, para isso vamos usar o
strftime que é usado exatamente pra isso, formatar nossa data
>>> print today.strftime("Ano com 4 digitos: %Y, agora com dois:: %y, mes: %m, dia: %d")
Ano com 4 digitos: 2009, agora com dois:: 09, mes: 12, dia: 03
>>>
Bom assim fica tranquilo formatar nossas datas né…
para maiores detalhes sobre formatação e assuntos relacionados aconselho a dar uma olhada aqui
time.strftime
Outra coisa corriqueira que temos que faze é transformar uma data no padrão DMYHMS em timestamp
vamos a mais um exemplo:
>>> >>> now = datetime.datetime.now() >>> print now 2009-12-03 20:31:23.894353 >>> >>> print "Timestamp:", time.mktime(now.timetuple()) Timestamp: 1259879483.0 >>>
e claro muitas vezes temos que fazer a operação contrária, transformar um timestamp em uma data
>>> timestamp = time.mktime(now.timetuple()) >>> data = time.localtime(timestamp) >>> data (2009, 12, 3, 20, 31, 23, 3, 337, 1) >>>
Bom nessa tupla temos
Ano, mes, dia, hora, minuto, segundos, dias transcorridos no ano etc…
Bom pra finalizar esse post mas não o assuntos vamos subtrair duas datas
e pra fazer isso vamos ver quantos dias eu já vivi
>>> dias_vividos = datetime.date(2009, 12, 03) - datetime.date(1976, 03, 21) >>> print dias_vividos 12310 days, 0:00:00 >>>
Bom galera promento retornar a esse assunto, mas por hora é isso, bateu sono e fome
abraços
Marcio
Muito bom. Para um iniciante em Py como eu, tá ótimo.
Nossa muito bom! adorei! me ajudou muito