Clase 11 · 11 minGratis
PEP 8 y Pylint: código que se lee bien
Clase 11 del curso gratis Aprende a Programar con Python: qué es PEP 8, por qué un código que funciona no siempre está bien escrito, y cómo Pylint lo califica de 0 a 10 y te dice qué corregir.
Toca cualquier marca ▸ 0:00 de los apuntes y el video salta a ese momento. Abrir en YouTube
Las normas APA del código
Para escribir una tesis existen las normas APA, ICONTEC o IEEE: qué letra usar, qué tamaño, dónde van las imágenes. El código también es texto, así que también tiene reglas . Puedes escribirlo como quieras, pero seguir un estándar le sube el nivel. Esa es buena parte de la diferencia entre un programador junior y uno senior .
En Python, el estándar se llama PEP 8. Un ejemplo de sus reglas: no
nombres una variable con una sola letra . Hoy sabes qué
guarda x = 28; el «tú del futuro», en dos años, no. edad = 28 se explica
sola.
Cada lenguaje tiene sus convenciones para nombrar :
snake_case: palabras en minúscula separadas por guion bajo. Es la de Python para variables y funciones (numero_notas,calcular_total).camelCase: la de Java para variables (numeroNotas).PascalCase: cada palabra con mayúscula inicial. En Python se usa para las clases (CuentaBancaria).
Si no las sigues, el código funciona igual, pero mantenerlo cuesta más: no siempre lo vas a tocar tú . Nombres, sangría y documentación siguen reglas; la página oficial de cada lenguaje dice cuáles .
Un código que funciona
Cuatro líneas: pide el nombre, genera un número al azar y lo anuncia como tu número de la suerte .
Funciona. ¿Está bien escrito?
Pylint: un linter que califica tu código
Un linter revisa el código y te dice qué tan bien escrito está. El de Python más conocido es Pylint, y se instala desde la consola :
pip install pylint
pylint ejemplo.pyPylint no corre en el editor de esta página: para esta parte necesitas Python en tu computador (clase 5). El resultado sobre el ejemplo :
************* Module ejemplo
ejemplo.py:4:0: C0304: Final newline missing (missing-final-newline)
ejemplo.py:1:0: C0114: Missing module docstring (missing-module-docstring)
Your code has been rated at 5.00/10Cada línea dice el archivo, la línea, la columna, un código y qué encontró. Y al final, una nota de 0 a 10.
Subir la nota de 5 a 10
- C0304, falta la línea final. PEP 8 pide que todo archivo termine con un salto de línea, uno solo . Al agregarlo, la nota sube a 7,5, y Pylint te dice cuánto mejoraste desde la vez anterior .
- C0114, falta el docstring del módulo. El archivo tiene que empezar con un texto entre triple comilla que diga qué hace . Con eso, 10/10 .
Pylint ya no se queja, pero el video da una recomendación más: cambiar x e
y por nombres que digan qué guardan . Pylint no la
marcó aquí; PEP 8 sí la pide.
Y ahora qué
Ya sabes variables, condicionales, ciclos, funciones y cómo escribir un código que otro pueda leer. Dos caminos para seguir, también gratis y con apuntes aquí:
- Python para Análisis de Datos: pandas, gráficas y datos reales.
- Python: Buenas Prácticas: de Pylint a pruebas, Git, integración continua y una API completa.
