¿Debo usar “camel case” o guiones bajos en Python? [duplicate]

3 minutos de lectura

avatar de usuario
tdc

Entonces, ¿cuál es mejor y por qué?

def my_function():

o

def myFunction():

  • FWIW, creo que esto está cubierto como “no importa” en uno de los PEP. Cualquiera de los dos parece ser aceptable desde mi experiencia (solo se consistente). En cualquier caso, esto es bastante subjetivo.

    usuario166390

    18 de enero de 2012 a las 10:46


  • ¿Por qué los votos para cerrar? Esta es una pregunta perfectamente razonable sobre lo que se considera una práctica normal en la comunidad.

    – Marcin

    18 de enero de 2012 a las 10:50

  • hay tantas convenciones de codificación válidas como desarrolladores, lo único importante es mantener la misma convención de codificación en un proyecto

    – Cédric Julien

    18 de enero de 2012 a las 10:50

  • No estoy de acuerdo con los que dijeron que “no importa”. la convención PEP8 es ampliamente respetada. También soy asombrado esto está cerrado como no constructivo, si haces una búsqueda en Google “camelcase en python”, ¡esto es lo primero que aparece!

    – Mike Vella

    30 de enero de 2013 a las 4:08

  • Creo que esta pregunta causa tensión porque The Specification dice que se usen guiones bajos, pero la mayoría de los codificadores profesionales usan camel case todos los días (en varios idiomas además de python). Los guiones bajos parecen estar llegando al final de su ciclo de vida, junto con tantos repositorios de C++ que se adhieren a la convención.

    – Neal Ehardt

    12 de febrero de 2013 a las 4:12


avatar de usuario
aayoubi

para todo lo relacionado con la guía de estilo de Python: te recomiendo que leas PEP8.

Para responder tu pregunta:

Los nombres de las funciones deben estar en minúsculas, con palabras separadas por guiones bajos según sea necesario para mejorar la legibilidad.

  • Recortó una parte importante de PEP8: “mixedCase solo se permite en contextos donde ese ya es el estilo predominante (por ejemplo, threading.py), para mantener la compatibilidad con versiones anteriores”. A veces, CamelCase es aceptable.

    usuario559633

    24 de julio de 2013 a las 18:04


  • Lo cual es absolutamente contradictorio con el hecho de que un grupo de palabras en mayúsculas y minúsculas forman un símbolo sólido inequívoco que parece un solo objeto que coincide con la idea de que el nombre de un método es una cosa (a diferencia de varios objetos, palabras, que deben leerse y más tarde interpretado como un solo grupo de varias cosas). Eso es aún peor para _ si el nombre del método contiene una palabra reservada.

    – Sebastián Sastre

    19 de marzo de 2015 a las 2:15

  • Por supuesto, Pitón utiliza caja_serpiente. Eso debería ser obvio.

    – ay

    23 de noviembre de 2017 a las 20:53

  • No entiendo por qué los guiones bajos mejoran la legibilidad, mientras que la Guía del marco de Microsoft afirma que Camel Case mejora la legibilidad. ¿Son los desarrolladores de Python y los desarrolladores de C# dos tipos de especies?

    – Gqqnbig

    24 de marzo de 2018 a las 7:07

  • @Gqqnbig Creo que el significado previsto de la parte citada es que las minúsculas con guiones bajos son más legibles que las minúsculas sin guiones bajos. Creo que si significara que snake_case es más legible que CamelCase, la coma estaría después de “guiones bajos” y no después de “minúsculas”.

    – Rico

    3 de diciembre de 2018 a las 9:51

avatar de usuario
david m

PEP 8 aconseja la primera forma para la legibilidad. Puedes encontrarlo aquí.

Los nombres de las funciones deben estar en minúsculas, con palabras separadas por guiones bajos según sea necesario para mejorar la legibilidad.

avatar de usuario
Harish Kurup

Los nombres de las funciones deben estar en minúsculas, con palabras separadas por guiones bajos según sea necesario para mejorar la legibilidad. mixedCase solo se permite en contextos donde ese ya es el estilo predominante

Mira ya ha sido respondida, haz clic aquí

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad