paint-brush
Usar negro para formatear automáticamente su Pythonby@davisdavid
15,913
15,913

Usar negro para formatear automáticamente su Python

Davis David4m2021/04/23
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow
ES

Black es la herramienta adecuada para identificar errores y formatear su código python al mismo tiempo y hacerlo más productivo. Requiere Python 3.6.0+ para ejecutarse. El uso de Black To Auto Format Your Python le dará velocidad, determinismo y libertad de las molestias de pycodestyle sobre el formateo. Puede reformatear todo su archivo en su lugar de acuerdo con el estilo del código Black. Ayuda a su cerebro a concentrarse en el problema que desea resolver y codificar soluciones, en lugar de distraerse con la estructura del código y las diferencias estilísticas.
featured image - Usar negro para formatear automáticamente su Python
Davis David HackerNoon profile picture

Escribir código Python es una cosa y escribir el código en un buen formato es otra cosa. La mayoría de las veces, especialmente los codificadores/programadores jóvenes se enfocan en asegurarse de que los códigos funcionen y se olvidan de formatear sus códigos.

Si escribe un programa pequeño (con 1000 líneas de código), podría salirse con la suya sin formatear su código, pero a medida que los programas se vuelven más y más complejos, se vuelven cada vez más difíciles de entender y en algún momento (alrededor de 15 000 líneas de código), se vuelve más difícil entender el código que usted mismo escribió.

La diferencia entre trabajar con código bien formateado y trabajar con código mal formateado es como la diferencia entre vivir en un palacio y vivir en una casa sucia.

¿Por qué es importante formatear su código python?

1. Legibilidad

Dar formato a su código le ayudará a leer el código de manera eficiente . Se ve más organizado y cuando alguien mira su código, esto también ayudará a dar una buena impresión del suyo.

2.Ayuda en su entrevista de codificación

Incluso al dar una entrevista de codificación, a veces los entrevistadores se preocuparán si está dando el formato adecuado para su código. Si olvida formatear, puede perder su trabajo, solo por este motivo.

3. Equipo de apoyo

El formato de su código se vuelve más importante cuando trabaja en un equipo donde varias personas trabajan en el mismo proyecto de software y el código que escribe debe ser entendido por sus compañeros de equipo; de lo contrario, se vuelve más difícil trabajar juntos.

4. Errores fáciles de detectar

El código mal formateado puede hacer que sea muy, muy difícil detectar errores o incluso trabajar en un programa y también es realmente horrible de ver. Es una ofensa a tus ojos.

Pylint y Flake8

La mayoría de los desarrolladores de Python disfrutan usando Pylint o Flake8 para revisar su código en busca de errores y guías de estilo.

Pylint es una herramienta que busca errores en el lenguaje de programación python, intenta hacer cumplir un estándar de codificación y busca olores de código. También puede buscar ciertos tipos de errores, puede recomendar sugerencias sobre cómo se pueden refactorizar bloques particulares y puede ofrecerle detalles sobre la complejidad del código.

Flake8 es una biblioteca de Python que envuelve PyFlakes , pycodestyle y el script McCabe de Ned Batchelder . Es un excelente conjunto de herramientas para verificar su base de código contra el estilo de codificación (PEP8) , errores de programación como "biblioteca importada pero sin usar", "Nombre indefinido" y códigos que no tienen sangría.

El problema es que estas herramientas solo informan los problemas que identifican en el código fuente y dejan que los desarrolladores de Python se encarguen de solucionarlos. Pero, ¿qué pasa si tenemos una herramienta que puede identificar y resolver el problema al mismo tiempo? Black es la herramienta adecuada para identificar errores y formatear su código python al mismo tiempo y hacerlo más productivo.

Introducción al negro

Del proyecto README:

Al usar Black , acepta ceder el control sobre las minucias del formato manual. A cambio, Black le brinda velocidad, determinismo y libertad de las molestias de estilo pycode sobre el formato. Ahorrarás tiempo y energía mental para asuntos más importantes.

Black puede reformatear todo su archivo en su lugar de acuerdo con el estilo del código Black. Ayuda a su cerebro a concentrarse en el problema que desea resolver y codificar soluciones, en lugar de distraerse con la estructura del código y las diferencias estilísticas menores.

Instalar negro

El negro se puede instalar ejecutando

 pip install black
. Requiere Python 3.6.0+ para ejecutarse. Una vez que Black esté instalado, tendrá una nueva herramienta de línea de comandos llamada black disponible en su shell, ¡y estará listo para comenzar!.

Para comenzar de inmediato con valores predeterminados razonables, elija el archivo python que desea formatear y luego escriba black filename.py en la terminal, luego el negro formateará su archivo python.

Formato de archivo único

Veamos este ejemplo simple, aquí están mis dos funciones de python en mi archivo de python llamado sample_code.py.

Entonces puedes usar

 black sample_code.py
en la terminal para cambiar el formato. Después de ejecutar el negro, observará el siguiente resultado.

Luego puede abrir sample_code.py para ver los códigos de python formateados.

El código de Python ahora está formateado y es más legible.

Formatear varios archivos

Para formatear más de un archivo python, escriba

 black folder_name/
en la terminal

Se reformatearon tres archivos python dentro de la carpeta llamada python_with_black.

Comprobación de archivos para formatear

Si no desea que Black cambie su archivo, pero quiere saber si Black cree que se debe cambiar un archivo, puede usar uno de los siguientes comandos:

 black --check .
Esto verificará qué archivo (s) de Python se puede formatear en la carpeta actual, pero en realidad no modifica los archivos de Python.

 black --check --diff file_name.py
Esto muestra lo que se debe hacer con el archivo, pero no modifica el archivo.

Cambiar el número de caracteres por línea

Tenga en cuenta que el valor predeterminado de Black es de 88 caracteres para la longitud de línea, pero puede cambiarlo con la opción "-l" o "- -line-length".

Ejemplo de cambio a 60 caracteres

 black -l 60 python_file.py
.

Negro en Jupyter Notebook

Para los usuarios de portátiles Jupyter, aún puede formatear automáticamente su código python con esta extensión simple llamada Jupyter Black . Esta extensión reformatea/embellece el código en la celda de código de un cuaderno con negro .

La extensión Jupyter Black proporciona

  • Un botón de la barra de herramientas.
  • Un atajo de teclado para reformatear la celda de código actual (predeterminado: Ctrl-B).
  • Un atajo de teclado para reformatear celdas de código completas (predeterminado: Ctrl-Shift-B).

Instalar Jupyter Negro

Primero asegúrese de haber instalado jupyter-contrib-nbextensions y black , luego ejecute los siguientes comandos.

 jupyter nbextension install https: //github.com/drillan/jupyter-black/archive/master.zip — user

Luego habilite la extensión ejecutando.

 jupyter nbextension enable jupyter-black-master/jupyter-black

Ahora puede comenzar a formatear su código python en cada celda del cuaderno. Primero, seleccione la celda del cuaderno en la que desea formatear su código python y luego haga clic en el botón de extensión llamado Negro.

Luego haga clic en el botón Jupyter Black.

Integración del editor

Puedes integrar Black con tus editores favoritos. Actualmente Black admite PyCharm/IntelliJ IDEA, Wing IDE, Vim, Visual Studio Code, Sublime Text 3, Atom/Nuclide, Kakoune, Thonny. Siga las instrucciones aquí para integrar Black con su editor favorito.

Si desea obtener más información sobre Black, le recomiendo ver la de Łukasz Langa.

Si aprendiste algo nuevo o disfrutaste leyendo este artículo, compártelo para que otros puedan verlo. Hasta entonces, ¡nos vemos en el próximo post!

También publicado en Medium .