16/11/2024

SQL - Numerando linhas

Nesta semana encarei um teste de SQL em que me pediram para desenvolver uma query, a princípio simples, mas que deu um nó na minha cabeça ao tentar resolver.

O que me ajudou a chegar a uma solução, depois de alguma pesquisa, foi numerar as linhas, no sentido de atribuir valores inteiros aos registros retornados por um select.

Como eu não tinha o costume de utilizar os recursos de numeração de linhas do SQL, resolvi estudar para melhorar meu conhecimento nesse assunto.

O objetivo deste artigo é dividir com vocês o resultado desse estudo.

19/08/2024

Cache de função no Python

Utilizar um "cache de função" significa armazenar os resultados das chamadas de uma função, evitando reprocessamentos demorados para os mesmos argumentos.

A ideia é armazenar os argumentos (parâmetros) recebidos pela função e o resultado do processamento retornado pela função.

Assim, quando a função recebe novamente os mesmos argumentos, em vez de executar seu processamento para encontrar o resultado, apenas retorna o resultado previamente armazenado.

Vamos a um exemplo, para melhorar o entendimento.

Digamos que temos uma função que calcula a multiplicação de um número inteiro pelo seu sucessor:

def vezes_proximo(numero):
    print('número =', numero)
    proximo = numero + 1
    print('próximo =', proximo)
    resultado = numero * proximo
    print('resultado =', resultado)
    return resultado

Ao executarmos essa função pela primeira vez, imprimindo seu retorno:

print(vezes_proximo(2))

Obteremos as seguintes informações:

número = 2
próximo = 3
resultado = 6
6

E sempre que executarmos novamente exatamente o mesmo comando, obteremos o mesmo resultado, como esperado!

print(vezes_proximo(2))
número = 2
próximo = 3
resultado = 6
6

Porém, como evitar esse reprocessamento quando não desejado?

É justamente para isso que utilizamos um cache de função.

08/07/2024

Testando a biblioteca openpyxl

Explorando os recursos da biblioteca openpyxl, que permite ao Python ler e escrever em planilhas no formato ".xlsx" (Excel), desenvolvi um script básico para demonstração.

Se você está interessado em manipulação de dados com Python, confira o repositório no GitHub:

    https://github.com/anselmobd/opyxl_tst.git