Programación con Python en Hackerrank — Impresiones

Recientemente comencé el desafío de “30 Días de Código” en Hackerrank. He usado algunos años R, por mi interés en el área estadística y análisis de datos, pero el camino para mejorar mis habilidades en este campo me lleva sin duda a uno de los lenguajes mas usados para ciencia de datos en la actualidad: Python (que hace un tiempo atrás probé superficialmente); por lo que estaré realizando las prácticas con éste.

Volviendo a mi experiencia en Hackerrank, el primer desafío es el clásico “Hola Mundo!”, que no presenta mayor dificultad. La interfaz de Hackerrank ofrece un editor integrado para tipear el código, y a través de la misma podemos compilarlo y ejecutarlo.

Editor incluido en Hackerrank

Otro “track” que inicié es “10 Días de Estadística”, para repasar conceptos básicos de estadística descriptiva y el uso de operadores y funciones dentro de Python. El “Día 0”, se trata de calcular las medidas de tendencia central más conocidas, para un conjunto de datos numéricos: media, mediana y moda.

Intro al primer desafío de “10 Días de Estadística”

La descripción y planteamiento del ejercicio están bien definidas, mostrando ejemplo de las entradas y salidas que debe recibir y generar nuestro script. Incluyen también una breve explicación de cómo tratar el problema y los cálculos. Esto aumenta nuestro cuidado al detalle dentro del código, para que pueda pasar las pruebas internas de Hackerrank.

Sin embargo, después de escribir el código para este primer día e intentar ejecutarlo, obtenía un error de sintaxis para una variable “X”. Bien, esto no es un gran problema usualmente; el mensaje de error de Python es bastante explícito. Mi problema en este caso estaba en que el error de sintaxis lo generaba una variable string “X” interna del ejercicio, es decir, yo no tenía control sobre cómo se generaba. Por lo que era imposible para mi probar mi código en la misma página.

Afortunadamente, en la interfaz existe un pequeño checkbox que permite “Probar con entrada personalizada”. Eligiendo esta opción, pude ingresar los datos de ejemplo de la descripción del ejercicio. Así por fin confirmé que realmente estaba obteniendo la “salida esperada”.

Conveniente, no?

Aun así no podía hacer el “submit” con una calificación acertada, seguía sin pasar los “test” por el error de sintaxis. Mi solución rápida fue cambiar el lenguaje del editor a “Python 3” (que inicialmente procesaba Python 2), y después de refrescar la página y hacer los cambios necesarios en el código, pude enviar mi código para aprobación.

C++, Java, Perl, Julia, Go, R, y la lista sigue.

Después de 3 días de desafíos, con descubrimientos positivos como los diccionarios, o el uso de comprensión de listas, además de la motivación implícita a moldear el estilo de programación para evitar dolores de cabeza como los errores de indentación (nada que un buen editor no pueda resolver!), Python va ganando puntos sin duda.

Like what you read? Give Mariangely Salazar a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.