Articles of pep8

Herramienta para verificar automáticamente el estilo de la cadena de documentos de acuerdo con PEP257

Las herramientas como pep8 pueden verificar el estilo del código fuente, pero no comprueban si las cadenas de documentación están ajustadas de acuerdo con pep257 , pep287 . ¿Hay tales herramientas? Actualizar Decidí implementar una herramienta de análisis estático por mi cuenta, ver: https://github.com/GreenSteam/pep257 En este momento, la mayor parte de pep257 está cubierta. El […]

PyCharm y filtros para herramientas externas.

Estoy probando PyCharm para el desarrollo de Django y hasta ahora estoy extremadamente feliz. Mi equipo sigue estrictamente el formato PEP8 y usamos el progtwig de línea de comandos pep8 para verificar que nuestro código cumpla. He configurado un comando de herramienta externa para ejecutar pep8 y funciona bien. Veo la capacidad de crear filtros […]

¿Por qué razón tenemos la convención de nomenclatura lower_case_with_underscores?

Dependiendo de su interpretación, esto puede ser o no una pregunta retórica, pero realmente me desconcierta. ¿Qué sentido tiene esta convención? Entiendo que las convenciones de nombres no necesariamente tienen que tener una rima o una razón detrás de ellas, pero ¿por qué desviarse de la ya popular camelCase? ¿Hay una rima y una razón […]

La línea es demasiado larga. Django PEP8

Información PEP8: models.py:10:80: E501 line too long (83 > 79 characters) Models.py: field = TreeForeignKey(‘self’, null=True, blank=True, related_name=’abcdefgh’) ¿Cómo escribir correctamente esta línea?

Python PEP8: Convención de líneas en blanco

Estoy interesado en saber qué es la convención de Python para nuevas líneas entre las partes del progtwig? Por ejemplo, considera esto: import os def func1(): def func2(): ¿Cuál debería ser la separación ideal entre las nuevas líneas? ¿Los módulos de import y las funciones? ¿Las propias funciones? He leído PEP8 , pero quería confirmar […]

¿Cómo escribir un archivo de configuración pep8 (pep8.rc)?

Encontré la documentación para pep8 pero no pude entender cómo escribir estos. Ni siquiera pude encontrar ningún ejemplo con opciones que no sean establecer max-line-length e ignorar. Estoy tratando de escribir un archivo .pep8.rc en el que, entre otras cosas, necesito hacer lo siguiente: habilitar el código fuente habilitar estadísticas habilitar el conteo excluir un […]

PEP8: no importe en la parte superior del archivo con sys.path

Problema PEP8 tiene una regla sobre poner las importaciones en la parte superior de un archivo: Las importaciones siempre se colocan en la parte superior del archivo, justo después de los comentarios y las cadenas de documentación del módulo, y antes de las globales y constantes del módulo. Sin embargo, en ciertos casos, me gustaría […]

¿Qué pautas de PEP 8 ignoras y a cuáles te limitas?

A lo largo de los años, mientras más Python escribo, más estoy de acuerdo con la mayoría de las pautas, aunque las rompo de forma sistemática e intencional por mis propias razones. Tendría curiosidad por saber qué en PEP 8 (u otras PEP también) las personas se adhieren religiosamente y por qué, y lo que […]

PEP 8, ¿por qué no hay espacios alrededor de ‘=’ en el argumento de palabra clave o un valor de parámetro predeterminado?

¿Por qué PEP 8 recomienda no tener espacios alrededor de = en un argumento de palabra clave o un valor de parámetro predeterminado ? ¿Es esto inconsistente con la recomendación de espacios alrededor de cada otra aparición de = en el código Python? Como es: func(1, 2, very_long_variable_name=another_very_long_variable_name) mejor que: func(1, 2, very_long_variable_name = another_very_long_variable_name) […]

¿Existe un formato recomendado para importaciones multilínea?

He leído que hay tres formas de codificar importaciones multilínea en python Con barras: from Tkinter import Tk, Frame, Button, Entry, Canvas, Text, \ LEFT, DISABLED, NORMAL, RIDGE, END Duplicar senteces: from Tkinter import Tk, Frame, Button, Entry, Canvas, Text from Tkinter import LEFT, DISABLED, NORMAL, RIDGE, END Con paréntesis: from Tkinter import (Tk, Frame, […]