Python
Python en el mundo real
Una caja de herramientas de ingeniero Python orientada al terreno: miniprogramas completos y autónomos (a menudo solo con la biblioteca estándar) que resuelven un problema real de principio a fin: diagnosticar un incidente de Ops, reconciliar dos exports contables, auditar una deriva de esquema. Cada snippet se ejecuta, su salida es real, y el énfasis está en la robustez (casos límite, NaN, idempotencia) más que en la sintaxis.
20 snippets destacados
- groupby + transform: features alineadas con las filastransform devuelve una Series del mismo tamano que el DataFrame original: ideal para normalizar cada fila respecto a su grupo.
- Reducir la memoria de un DataFrame (downcast + category)Downcast de enteros/flotantes y conversion de las columnas de texto repetitivas a category: divide la huella de memoria entre 5 y 10.
- merge_asof: union temporal sin fuga de futuroAsocia cada evento con el ultimo valor conocido de otra serie (direccion backward), con una tolerancia maxima.
- accumulate: equity curve y drawdown maximoAcumulados con itertools.accumulate: suma corriente para la curva de capital, maximo corriente para los picos, y drawdown por diferencia.
- Analisis de Pareto: value_counts y parte acumuladaFrecuencias, porcentajes y acumulado en tres lineas: identifica cuantas categorias explican el 80 % del volumen.
- Analizador de logs Nginx: informe de trafico completoMini-herramienta que recorre un access.log, agrega el trafico por hora y por clase de codigo HTTP, y luego imprime un informe en consola con barras ASCII y porcentajes.
- Backtest simple: cruce de medias movilesBacktest vectorizado de una estrategia SMA 20/50 sobre velas H1: posicion desplazada una barra (sin look-ahead), equity curve, winrate y drawdown maximo.
- Conciliacion de dos exportaciones contablesMerge outer con indicator entre la exportacion del banco y la de contabilidad: apuntes ausentes en uno u otro lado, diferencias de importe al centimo, y tabla de lineas a revisar.
- Monitorizacion de caducidad de certificados SSLSe conecta por TLS a cada dominio del parque, lee la fecha notAfter del certificado y clasifica la urgencia de la renovacion (OK / PRONTO / URGENTE) en una tabla de estado.
- Informe de SLA sobre una exportacion de tickets de soporteCalcula la duracion de resolucion de cada ticket, la compara con el SLA de su prioridad (P1=4h … P4=72h) y genera una tabla de cumplimiento / mediana por prioridad, con marcas para lo que no llega al objetivo.
- Categorizacion automatica de un extracto bancarioClasifica cada gasto de un extracto CSV mediante reglas regex sobre el concepto, suma los totales por categoria e imprime el reparto con barras proporcionales.
- Analisis de stock: clasificacion ABC y roturasCalcula el valor inmovilizado por referencia, clasifica el stock en A/B/C segun la parte acumulada (80/95/100) y lista las referencias que entraran en rotura en menos de 7 dias al ritmo de venta actual.
- Deduplicacion difusa de fichas de clientes (SequenceMatcher)Compara todos los pares de fichas (nombre + ciudad) con difflib.SequenceMatcher y lista los duplicados probables por encima del 88 % de similitud, con la puntuacion primero para el arbitraje humano.
- Banco de pruebas timeit: 3 implementaciones cara a caraCompara tres formas de sumar 100 000 enteros con timeit.repeat (minimo de 5 repeticiones), y luego clasifica los candidatos por ms/llamada con ratio y barras.
- Control de migracion: recuentos origen vs. destinoCompara tabla por tabla las volumetrias del sistema antiguo y el nuevo, muestra los deltas con signo y emite un veredicto GO / NO-GO para el cambio.
- Cache en disco como decorador con estadisticas hit/missDecorador que guarda los retornos de funcion en JSON en disco (clave SHA-1 de los argumentos), sobrevive a los reinicios a diferencia de lru_cache, y registra los hits/miss.
- Anonimizador RGPD: seudonimizacion de una exportacion CSVReemplaza los campos PII (apellido, nombre, email, telefono) por un hash SHA-256 con sal y truncado: determinista, asi que las uniones entre ficheros siguen siendo posibles tras la anonimizacion.
- Mini motor de busqueda TF-IDF sobre la documentacionIndexa los ficheros Markdown de una carpeta docs/, calcula una puntuacion TF-IDF propia (sin dependencias) y clasifica los documentos mas relevantes para una consulta libre.
- Detector de deriva de esquema entre dos extraccionesCompara columnas y dtypes de dos extracciones mensuales del mismo flujo: columnas anadidas/eliminadas, tipos modificados, y un veredicto bloqueante o no para el pipeline aguas abajo.
- Orquestador de jobs secuenciales con registroEncadena las etapas de un pipeline (extract, transform, load, checks) mediante subprocess, se detiene en el primer error e imprime el registro de ejecucion: codigo de retorno, duracion y estado por etapa.