Ao começar a estudar programação acabei me apaixonando e querendo usar programação com fins profissionais. Mas estudando acabei descobrindo como é útil programar mesmo sem interesses profissionais.
Esta semana tive mais um pequeno problema no qual saber programação me ajudou a resolvê-lo um pouco mais rápido.
Apareceu uma demanda no trabalho para análise de resultados de um experimento e os resultados estavam em PDF. Acabei criando um leitor de PDF em Python para filtrar só o que me interessa (usando regex) em cada arquivo e tabular esses dados, mas isso é assunto pra outro tópico.
O problema que quis comentar aqui foi que após analisar esses dados eu precisei comprimir esses arquivos num .zip. Mas os arquivos específicos desse dia de análise vieram com um erro:

Percebam que alguns arquivos estão no formato certo, PDF, e outros nem formato têm. Foi um vacilo que eu cometi ao recuperar os dados do computador no qual foi feito o experimento. Esses arquivos sem formato evidente na verdade só podem ser lidos pelo software do aparelho. Eu até posso criar um programa pra ler esses arquivos mas não é algo que vem ao caso agora.
Então, eu precisava zipar todos os PDFs mas eu tinha arquivos que não são PDFs no meio e precisaria deletá-los.
Eu poderia resolver com uma simples seleção dos arquivos indesejados com o mouse e apagar todos eles:

É algo que pode ser até resolvido rapidamente se eu não tenho muitos arquivos indesejados. Ou eu poderia só organizar por tipo e selecionar rapidamente com o mouse todos os indesejados e apagar. Mas resolvi resolver isso com programação.
Abri uma janela do terminal nessa pasta e resolvi rapidamente o problema com Python:

Pronto, ao final só apareceram os PDFs e os arquivos sem extensão foram deletados da minha pasta.
O código foi o seguinte:
# importa a lib que simula o sistema operacional
import os
# cria uma lista somente com os arquivos indesejados
# usando a função listdir que enumera os arquivos do diretório raiz passando ('.') como argumento
# e dentro da lista adicionamos a condição de o nome do arquivo não terminar em '.pdf'
# assim só recolhemos os arquivos sem a extensão pdf
lista_arquivos_indesejados = [item for item in os.listdir('.') if not item.endswith('.pdf')]
# iterando sobre a lista de arquivos indesejados, usamos a função remove
# do sistema operacional para deletar os arquivos indesejados da minha pasta
for item in lista_arquivos_indesejados:
os.remove(item)
Claro que tem mil maneiras de resolver um problema besta desses, inclusive organizando por tipo eu teria resolvido mais rápido até, selecionando vários arquivos indesejados com o mouse de uma vez, mas a intenção aqui foi mostrar que dá pra resolver isso programando também, e com esse conhecimento de programação podemos resolver problemas muito mais cabeludos do dia a dia.