En python ¿generalmente usa PEP 8 -- Style Guide for Python Code como sus estándares/directrices de codificación? ¿Hay otros estándares formalizados que prefieras?Estándares/mejores prácticas de codificación de Python
Respuesta
"En python, ¿generalmente utiliza PEP 8 - Guía de estilo para Python Code como sus normas/directrices de codificación? ¿Hay otros estándares formalizados que prefiera?"
Como se ha mencionado por usted sigue PEP 8 para el texto principal, y PEP 257 para convenciones docstring
Junto con Python guías de estilo, le sugiero que consulte el siguiente:
Sí, trato de seguirlo lo más cerca posible.
No sigo ningún otro estándar de codificación.
Lo sigo de manera extremadamente rigurosa. El único dios antes de PEP-8 son las bases de código existentes.
y me gustaría señalar que PEP-8 incluso tiene en cuenta las bases de códigos existentes. –
Sigo las directrices Python Idioms and Efficiency, por Rob Knight. Creo que son exactamente lo mismo que PEP 8, pero son más sintéticos y se basan en ejemplos.
Si está utilizando wxPython también puede querer marcar Style Guide for wxPython code, por Chris Barker, también.
PEP 8 es buena, la única cosa que me gustaría que llegó con más fuerza en la era de la guerra santa aquí-contra-espacios.
Básicamente, si está iniciando un proyecto en python, debe elegir pestañas o espacios y luego disparar a todos los delincuentes a primera vista.
¿Pestañas o espacios? De PEP8: Los espacios son el método preferido de sangría. Las pestañas deben usarse únicamente para mantener la coherencia con el código que ya está sangrado con pestañas. –
//, PEP8 es bastante claro que los espacios son el método preferido de indentación, Ryan. Downvoted. Sin embargo, ¿actualizarías la respuesta? –
Para añadir a bhadra'slist de guías idiomáticas: presentación de
Pedido Anthony Baxter en Effective Python Programming (de Oson 2005).
un extracto:
# dict's setdefault method turns this:
if key in dictobj:
dictobj[key].append(val)
else:
dictobj[key] = [val]
# into this:
dictobj.setdefault(key,[]).append(val)
me quedo con PEP-8 muy de cerca.
Hay tres cosas específicas que no me molestan en cambiar a PEP-8.
Evite los espacios en blanco inmediatamente entre paréntesis, corchetes o llaves.
sugerida:
spam(ham[1], {eggs: 2})
hago esto de todos modos:
spam(ham[ 1 ], { eggs: 2 })
¿Por qué?Más de 30 años de hábito arraigado están acurrucados contra nombres de funciones o (en C) palabras clave. Comenzando con Fortran IV en los años 70.
Use espacios alrededor de operadores aritméticos:
sugerida:
x = x * 2 - 1
que hago esto de todos modos:
x= x * 2 - 1
¿Por qué? La ciencia de la programación de Gries sugirió esto como una forma de enfatizar la conexión entre la asignación y la variable cuyo estado está siendo cambiado.
No funciona bien para asignaciones múltiples o asignaciones aumentadas, para eso uso muchos espacios.
Para los nombres de función, nombres de los métodos y la instancia de nombres de variables
sugerida: minúsculas, con palabras separadas por guiones como sea necesario para mejorar la legibilidad.
hago esto de todos modos: camelCase
¿Por qué? Más de 20 años de hábito arraigado de camelCase, comenzando con Pascal en los años 80.
¡Es un gran contenido! http://codingstyleguide.com o http://codereview.stackexchange.com sería un buen lugar para tener estas excelentes pautas. – Pompeyo
Sigo el PEP8, es una gran pieza de estilo de codificación.
- 1. Prácticas de codificación desactualizadas
- 2. PHP prácticas de codificación
- 3. razones prácticas para Сhurch Codificación codificación
- 4. Prácticas de codificación de C++ segura
- 5. PHP requiere/incluye prácticas de codificación
- 6. Prácticas de codificación para C# Nullable tipo
- 7. Jinja2 estilo de codificación/mejores prácticas
- 8. Codificación de Python JSON
- 9. Normas y buenas prácticas de codificación de Erlang
- 10. ¿Existen mejores prácticas de NSIS o estándares de codificación?
- 11. Sugerencias de literatura sobre mejores prácticas/buenas técnicas de codificación
- 12. Codificación de Python para pipe.communicate
- 13. Método de codificación Python String
- 14. ¿Qué prácticas de codificación OOP siempre debe tener en cuenta?
- 15. Python base 36 codificación
- 16. Codificación URL en python
- 17. Mejores prácticas de PyLint?
- 18. Caracteres de codificación de Python con urllib.quote
- 19. ¿El mejor tipo de salida y prácticas de codificación para las funciones __repr __()?
- 20. ¿Estilo de codificación común para Python?
- 21. Python y BeautifulSoup problemas de codificación
- 22. Delphi: Cadenas de codificación como Python do
- 23. Prevenir errores de codificación en Python
- 24. Codificación/decodificación URL con Python
- 25. Codificación JSON fácil con Python
- 26. Codificación en declaración XML python
- 27. Python: LookupError: codificación desconocida: hex
- 28. Mejores prácticas de lanzamiento de la biblioteca de Python
- 29. Proyectos de iOS de código abierto para aprender las mejores prácticas de codificación
- 30. ¿Hay alguna sugerencia para desarrollar un documento de normas/mejores prácticas de codificación de C#?
//, La solicitud de "preferencias del público" puede parecer inofensiva, al principio, pero convierte Stackoverflow en un mecanismo de votación, una especie de democracia pervertida de unos pocos contra muchos. "¿Hay alguna otra ________ que prefieras?" es, literalmente, pedirles una preferencia, no un hecho. –