Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

funções built-in para formatação de data?

Fiquei pensando se alguém já chegou a pesquisar algum tipo de função built-in do python para data, ou então qualquer outra boa para que use imprtando...

De qualquer forma eu solucionei o caso de dia e mês com 1 caracter da seguinte for: (mas ainda assim a data é uma string)

#Classe

class Data:

#Objeito

def __init__(self, dia, mes, ano): # entrada dos parâmetros de data do objeto
    print("construindo objeto... {}".format(self))
    self.dia = dia
    self.mes = mes
    self.ano = ano

#Metodo

def formatada(self):

    if len(self.dia) == 1:
        self.dia = "0"+self.dia
    else:
        self.dia

    if len(self.mes) == 1:
        self.mes = "0"+self.mes
    else:
        self.mes

    print("{}/{}/{}".format(self.dia, self.mes, self.ano)) # resultado do metrodo.
4 respostas

Não tem nada na lista de built-in para obter a data do sistema, em geral em sua maioria são coisas relacionadas à calculos e tratamento de strings e tipos de dados... Caso queira dar uma olhada, essa é a lista completa das funções built-in na versão 3+ do Python: https://docs.python.org/pt-br/3/library/functions.html

Agora importanto externamente, tem dezenas de formas de se obter esse dado...

Eu no início usei a biblioteca time e utilizei apenas a procedure localtime() que retorna a data e horário que está registrada na sua máquina:

import time
t = time.localtime()
print(f'{t[2]}/{t[1]}/{t[0]} - {t[3]:02}:{t[4]:02}:{t[5]:02}')

#print(t)  # caso queira verificar todos valores retornados por time.localtime()

Oi Thiago, essa é básica e muito boa... já guardei no meu bloquinho aqui, valew! rs

Acho que o segredo agora é pratica e "vasculhar" bastante essas funções que podemos importar para facilitar o desenvolvimento... deve ter muita coisa pronta e muito boa...

vou usar sua sugestão do import time para aprimorar o desafio! rs

Boa dica Thiago!!

Grato.

solução!

Oi Thiago e Robson, olha que legal... na própria lista de formação do Python tem um artigo que fala de tratamento de data: https://www.alura.com.br/artigos/lidando-com-datas-e-horarios-no-python

ele fica logo após o término do Python - Avançando na Orientação a Objetos, era algo desse tipo que estava procurando e resolve exatamente o problema do meu código do desafio... é a função strftime

Show, né? e o melhor, a variavel se mantem como data e não como string! Adorei!

data_em_texto = data_atual.strftime(‘%d/%m/%Y’) print(data_em_texto)