Soy un codificador de Python bastante fuerte, pero gran parte de mi estilo es un poco fortuito, y estoy seguro de que hay más soluciones Pythonic a muchos problemas que los que se me ocurren. ¿Qué PEP son esenciales para que lea cualquier Pythonista bien versado?¿Qué PEP son lecturas obligadas?
Respuesta
Definitivamente PEP 8, una guía de estilo para Python.
Use una gran dosis de sentido común cuando lo lea. Ignore por completo la sección sobre "79 caracteres"; está dañado por el cerebro y lleva a un código feo y difícil de leer sin ningún beneficio en el mundo real (esto fue escrito en 2001 y los sistemas de desarrollo sanos no eran 80x25 incluso entonces). Los horrores del ejemplo "Rectangular" muestran el problema muy claramente. –
A pesar de mi pantalla de 22 ", todas las ventanas de mi editor/terminal están fijadas en 80 caracteres e intento escribir el código en consecuencia. (Pero, como dice Terry Pratchett, las reglas son para hacerte pensar antes de romperlas) – bayer
+ 1 para PEP8. También hago todo lo posible para mantenerlo en 80. – fengshaun
Descubrí que leer los rechazados puede dar una buena idea de lo que es Pythonic y lo que no. Esto fue hace un tiempo, así que no tengo ningún ejemplo específico.
ahora es retrospectiva, pero todavía interesante: Creo Things that will Not Change in Python 3000 es una buena lectura, con una gran cantidad de enlaces a las discusiones que precedieron a las decisiones.
también Pep 0257 convención docstring
Aunque Python es increíblemente intuitiva, muchas personas no comprenden su filosofía.
Pep 20: El Zen de Python
- Bello es mejor que feo.
- Explícito es mejor que implícito.
- Simple es mejor que complejo.
- El complejo es mejor que complicado.
- El plano es mejor que el anidado.
- Sparse es mejor que denso.
- La legibilidad cuenta.
- Los casos especiales no son lo suficientemente especiales como para infringir las reglas.
- Aunque la practicidad supera a la pureza.
- Los errores nunca deben pasar silenciosamente.
- A menos que se silencie explícitamente.
- En vista de la ambigüedad, rechace la tentación de adivinar.
- Debería haber una, y preferiblemente solo una, forma obvia de hacerlo .
- Aunque esa forma puede no ser obvia al principio a menos que sea holandés.
- Ahora es mejor que nunca.
- Aunque nunca suele ser mejor que ahora derecho.
- Si la implementación es difícil de explicar, es una mala idea.
- Si la implementación es fácil de explicar, puede ser una buena idea.
- Los espacios de nombres son una gran idea: ¡hagamos más de estos!
También recomiendo PEP 8 y 257. Sé que esto desvía ligeramente de la pregunta original, pero me gustaría señalar que PyCharm (probablemente el mejor entorno de programación Python vueltas en mi opinión) de forma automática verifica si estás siguiendo algunas de las pautas más importantes de PEP 8, por si acaso alguien está interesado ...
Aquí es un índice de la PPE - http://www.python.org/dev/peps/
, cuando cada vez que uno ha duda acerca de un tema, se puede buscar en que
- 1. ¿Por qué las lecturas bloquean otras lecturas en MyISAM?
- 2. ¿Las 'lecturas' variables volátiles son tan rápidas como las lecturas normales?
- 3. son lecturas simultáneas de una variable segura para subprocesos?
- 4. ¿Por qué las lecturas de CouchDB son tan lentas? (1.5MB/so más o menos)
- 5. ¿Por qué son tan altas las lecturas lógicas para las funciones agregadas en ventanas?
- 6. Ruby multithreading/multiprocesamiento lecturas
- 7. Lecturas sucias en Postgres
- 8. Estado actual de PEP 8 Reglas?
- 9. MongoDB: ¿las lecturas/escrituras son concurrentes a la base de datos?
- 10. PEP 302 Ejemplo: Nuevos ganchos de importación
- 11. CouchDB - evitar lecturas no autorizadas
- 12. SQL Server - lecturas sucias Pros y Contras
- 13. ¿Cuáles son las mejores lecturas para comenzar a utilizar WPF en lugar de WinForms?
- 14. pesadilla con importaciones relativas, ¿cómo funciona pep 366?
- 15. ¿Qué son los bloqueos de rango?
- 16. ¿Qué son las cookies firmadas y por qué son útiles?
- 17. sincroniza lecturas a una colección java
- 18. ¿Cómo se producen las lecturas fantasmas?
- 19. Lecturas distribuidas de HDFS sin Map/Reducir
- 20. PEP 3118 advertencia al utilizar ctypes matriz como matriz numpy
- 21. Aplicar el formato PEP-8'ish en Github commits
- 22. Vim y PEP 8 - Código Guía de Estilo para Python
- 23. el tipo bytes en Python 2.7 y PEP-358
- 24. Creación de demonio de python 2.7 con pep-3143
- 25. ¿Qué son los RFC?
- 26. ¿Qué son los conceptos?
- 27. ¿Qué son los futuros?
- 28. ¿Qué son iteradores, C++?
- 29. ¿Qué son skolems?
- 30. ¿Qué son intrínsecos?
1 - Muy buena pregunta. –
http://www.python.org/dev/peps/ – u0b34a0f6ae
debe ser wiki de la comunidad – SilentGhost