Módulo Pylint en Python

A menudo nos quedamos atascados en el medio o encontramos errores cuando codificamos/ejecutamos algunos programas. Por lo general, navegamos por Internet en busca de ayuda y hacemos que nuestro código se ejecute. Pero, ¿cómo entendemos el código publicado en internet? Algunas de las respuestas típicas a esta pregunta son docstrings, artículos escritos sobre ese código… Uno de los mayores problemas en esta era es entender los programas de los demás. Las situaciones son aún peores si no hay cosas explicativas como comentarios, strings de documentación en el código. Como programadores, debemos hacer que nuestro código sea legible y comprensible. Para abordar la solución, Python proporciona un módulo pylint . Este artículo proporciona una breve introducción al módulo pylint y proporciona consejos para obtener una buena puntuación en mi código. Empecemos. Pylint es una herramienta que

  • Enumera los errores que vienen después de la ejecución de ese código de Python
  • Hace cumplir un estándar de codificación y busca olores de código
  • Sugerir cómo se pueden actualizar bloques particulares
  • Ofrecer detalles sobre la complejidad del código.

La herramienta Pylint es similar a pychecker , pyflakes , flake8 y mypy .

Instalación

Para instalar pylint, asegúrese de que Python esté instalado en su PC. Abra el símbolo del sistema (Windows) / terminal (Linux) en su PC y escriba el siguiente comando

pip install pylint 

Para verificar la instalación de pylint, escriba el siguiente comando

pylint --version

Debería ver la versión pylint «2.4.4». También podemos verificar la instalación reinstalando el pylint. En ese caso, si pylint ya está instalado, debería ver Requisito ya satisfecho en su pantalla.

Trabajando con Pylint

Considere el siguiente programa que acepta dos números e imprime su suma. 

Python3

a = 1
b = 2
print(a + b)

Ahora guarde el programa anterior en el archivo gfg.py
Abra su símbolo del sistema / terminal y escriba el siguiente comando

pylint gfg.py

En la versión pylint 2.4.4, obtendrá un informe como se muestra a continuación. Los mensajes pueden cambiar según la versión. pylint-python La puntuación del código anterior es -10,0/10,0 (muy baja). Si obtenemos una puntuación baja, no significa que nuestro código sea incorrecto. La puntuación representa qué tan bueno/malo su código es comprensible para otro programador. Necesitamos mejorar nuestro código considerando las sugerencias dadas en el informe. Cada sugerencia/punto de mensaje en el informe se dará con un formato de mensaje que consiste en una identificación y su significado. Cada ID comienza con un alfabeto y el resto estará numerado. Cada alfabeto denota el tipo de objeto de mensaje. Algunos de los objetos de mensaje son

S.No Objeto de mensaje Expansión Explicación
1. C Convención Se muestra cuando el programa no sigue las reglas estándar.
2. R refactorizar Se muestra por mal olor de código.
3. W Advertencia Se muestra para problemas específicos de Python
4. mi Error Se muestra cuando la ejecución de esa línea en particular da como resultado algún error.
5. F Fatal Se muestra cuando pylint no tiene acceso para seguir procesando esa línea.

Analicemos algunas técnicas para mejorar la puntuación.

  • ID C0326 sugiere que un error de espacio en blanco incorrecto significa que debemos proporcionar un espacio en blanco entre un y el símbolo = . Esta regla es aplicable a todas las declaraciones en las que se utiliza un operador inmediatamente después de un identificador.
  • ID C0304 viene con la sugerencia de nueva línea faltante, lo que significa que tenemos que agregar una línea en blanco cuando completamos nuestro código.
  • ID C0114 viene bajo la sugerencia de string de documentación de módulo faltante, lo que significa que debemos agregar una string de documentación en la parte superior que se refiere al uso del programa escrito debajo de eso.
  • ID C0103 viene con una sugerencia de nombre no válido que se puede evitar escribiendo los identificadores que comienzan con una letra mayúscula. Pero, por lo general, creemos que los nombres de las clases usan CamelCasing, es decir, los nombres de las clases comienzan con una letra mayúscula. Para evitar esta sugerencia, agregaremos una expresión regular a pylint que realmente acepte todas las variables en minúsculas. Discutiremos esto más en los ejemplos adicionales.

La versión modificada del código es: 

Python3

'''
This program adds two numbers and displays their results
'''
A = 1
B = 2
print('Sum of Numbers:', A + B)

Si ejecutamos el código anterior usando pylint, obtendremos el siguiente resultado . Aquí mejoramos nuestra puntuación de -10,0 a 10,0. Eso es genial. Pero, ¿es comprensible mi código? La respuesta es no . Hay algunos cambios más que necesitamos para especificar el módulo pylint para puntuar nuestro código.

Sugerencia de cambio de nombre no válido

Como se discutió anteriormente, el módulo pylint utilizará la convención de nomenclatura en mayúsculas de forma predeterminada. La expresión regular utilizada para identificar esa convención de mayúsculas es (([A-Z_][A-Z1-9_]*)|(__.*__))$. Necesitamos agregar nuestra sugerencia como una expresión regular que acepta identificadores que comienzan con letras en minúsculas. Para hacer eso, abra su símbolo del sistema y ejecute la siguiente declaración.

pylint --const-rgx='[a-z\_][a-z0-9\_]{2, 30}$' filename.py

. Esto evitará el uso de la convención de mayúsculas. Podemos modificar eso permanentemente cambiando las reglas en pylint –generate-rcfile que discutiremos en futuros artículos.

Publicación traducida automáticamente

Artículo escrito por avsadityavardhan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *