paint-brush
Introducción a la depuración de Python con Pdbpor@terieyenike
2,575 lecturas
2,575 lecturas

Introducción a la depuración de Python con Pdb

por Teri4m2022/08/24
Read on Terminal Reader
Read this story w/o Javascript

Demasiado Largo; Para Leer

El Depurador de Python (pdb) es un depurador de código fuente interactivo para programas de Python. Proporciona funciones adicionales, como establecer puntos de interrupción condicionales, recorrer el código fuente línea por línea y verificar las variables en una línea en particular y su pila de llamadas. Este artículo explicará cómo se utiliza la herramienta de depuración `pdb` para inspeccionar y analizar su código para que cumpla con los estándares de la industria durante las pruebas y antes de enviarlo a los usuarios. El pdb incorporado es parte de la biblioteca estándar que viene con Python durante la instalación en su herramienta de trabajo. Le da varios otros comandos que puede usar al probar su programa.
featured image - Introducción a la depuración de Python con Pdb
Teri HackerNoon profile picture

La depuración no debe ser una idea de último momento después de implementar una aplicación en producción. Debe llevarse a cabo con la mayor frecuencia posible durante el desarrollo, ya que esto facilita el seguimiento de los errores del código y brinda a los desarrolladores una solución al problema que hace que su código no se ejecute. La mayoría de los desarrolladores no saben que la función de impresión de Python no proporciona la imagen exacta de los errores que ocurren en el desarrollo. Entonces, ¿qué puedes usar para identificar y corregir estos errores? ¡La respuesta es herramientas de depuración! Mejoran la productividad y ayudan a que el proceso de codificación sea más efectivo.


El Depurador de Python (pdb) es un depurador de código fuente interactivo para programas de Python. Más allá de la depuración, proporciona una funcionalidad adicional, como establecer puntos de interrupción condicionales, recorrer el código fuente línea por línea y verificar las variables en una línea particular y su pila de llamadas.


Este artículo explicará cómo se usa la herramienta de depuración pdb para inspeccionar y analizar su código para que cumpla con los estándares de la industria durante las pruebas y antes de enviarlo a los usuarios.


requisitos previos

Para comprender el proceso de depuración, debe tener:

  • Pitón instalado en su máquina local
  • Conocimiento de Python


Formas de mejorar sus programas de Python

Para depurar su código Python correctamente, debe tener en cuenta los siguientes consejos para ayudar a mejorar la productividad y la verificación de errores:

  • Linting: detecta problemas con su código antes de ejecutar el código. Una forma de hacer que esto funcione es instalar un software que ayude a codificar por colores sus programas para que cometa menos errores y los resuelva rápidamente cuando el IDE (Código VS) señala el error. Una de esas herramientas es pilinto , y da sugerencias cuando codificas.
  • Un entorno de desarrollo integrado (IDE) / editor: IDE específicos de Python como PyCharm o código VS tienen herramientas y funciones integradas que ayudan con el formato automático del código basado en PEP8 y resaltan su código cuando hay un error.
  • Errores de lectura: aprender a leer errores de código en sus programas de Python resolvería significativamente la mitad del problema porque puede comprender lo que significan en la consola.


 name = 'teri print(name)


Consola

Depuración de Python con pdb

En esta sección, probará un código de Python mediante el depurador de Python, pdb . Para ejecutar el código y resolver errores en tiempo real en un entorno interactivo.


El módulo pdb es parte de la biblioteca estándar que viene con Python durante la instalación en su herramienta de trabajo. Esta herramienta le brinda varios otros comandos que puede usar al probar su programa. Escribamos una función usando pdb. Cree un nuevo archivo app.py o cualquier otro nombre que desee en su editor de código, que termine con la extensión .py .


 import pdb def multiply_number(num1, num2): pdb.set_trace() return num1 * num2 print(multiply_number(5, 10))


El código anterior hace lo siguiente:

  • Importar la biblioteca pdb
  • Defina una función, multiply_number con dos parámetros, num1 y num2
  • Llame a la biblioteca con el método set_trace , que es útil en el objeto pdb ya que pausa su programa e ingresa al modo de depuración que le permite escribir y probar su código en la consola.
  • Obtenga el resultado de los argumentos con la palabra clave de retorno
  • Llame a la función y pase los argumentos numéricos


Ejecutar este programa con el comando python3 <name-of-file.py> ingresa al depurador, donde podemos pasar varios comandos del depurador para ejecutar el código. Comprobar el Comandos del depurador documentación para encontrar la lista completa de comandos que puede usar.


A continuación, probemos algunos comandos en la consola:

Al escribir a o args se enumeran todos los argumentos utilizados en la función actual, multiplicar_número.



Antes de intentar otro comando, actualice el código en el archivo app.py para incluir la cadena como parte del argumento, de modo que los programas generen errores durante la ejecución:


 # app.py import pdb def multiply_number(num1, num2): pdb.set_trace() return num1 * num2 print(multiply_number(5, 'execute'))


Vuelva a ejecutar el programa con el comando python3 app.py:

Escriba num1 y num2 en la consola, genera el resultado de los argumentos pasados en la función multiplicar_número.



Otros comandos que puede probar incluyen el siguiente paso, continuar, etc., que se encuentran en la documentación.


Finalmente, una vez pdb haya identificado el error en el código y el número de línea en el que ocurrió, puede volver a su código y limpiarlo corrigiendo el error y usando el argumento correcto para que el programa se ejecute.


Nota: El módulo pdb es para pruebas durante el desarrollo, no para la producción. Quítelo antes de implementarlo.

Conclusión

Este artículo lo guía para adoptar las mejores prácticas al intentar corregir el código e identificar errores. Usar el método es mejor que la función de impresión, ya que tiene muchas más funciones para ayudarlo a mejorar la calidad de su código.


Aprende más