En Python es habitual encontrar nombres de variables o métodos que comienzan o finalizan con uno o dos caracteres subrayado. Indicando que estos elementos son especiales. En esta entrada se va a explicar cual es el significado de los métodos y las variables subrayadas en Python.
_name
)Las variables y métodos cuyo nombre comienza con un subrayado indica que el elemento se ha escrito únicamente para uso interno en las clases. Esto es una convención que se define en PEP 8 y no afecta al comportamiento del programa. Siendo solamente una ayuda para los programadores a la hora de leer el código. Esto es así ya que, en Python, a diferencia de otros leguajes como C++ o Java, no existen diferencias entre las variables privadas o públicas.
name_
)Las palabras reservadas de Python no se pueden utilizar para dar nombre a una variable. Por ejemplo, no se puede llamar a una variable def
o class
. Si creemos que el mejor nombre para una variable es el de una palabra reservada en PEP 8 se recomienda usarla añadiendo el carácter subrayado al final de nombre. Así se pueden definir variables cuyo nombre sea def_
o class_
. Al igual que el caso de los nombres que comienzan por subrayado esto es solamente una convención.
__name
)A diferencia de los casos vistos hasta ahora, los nombres que comienza por dos caracteres de subrayado si que son interpretados por Python. En este caso el intérprete de Python cambia el nombre del atributo para evitar conflictos de nombres en el caso de que se definan clases heredadas. Un proceso que conoce como “name mangling”.
__name__
)Los nombres que comienzan y finalizan con dos caracteres de subrayado están reservados para usos especiales en el leguaje. Por ejemplo, __init__
para los constructores de los objetos o __call__
para hacer que un objeto sea invocable. Métodos que en muchas ocasiones se llaman “métodos mágicos” (“magic methods”), aunque no exista ninguna magia detrás de ellos.
Lo mejor es evitar el uso de estos nombres para evitar problemas en futuras versiones de Python.
El cambio de nombre que hace el intérprete de Python para los nombres que comienzan con dos caracteres de subrayado no se realiza en este caso.
_
)Finalmente, también es posible encontrar el carácter subrayado como nombre de una variable en Python. Un nombre que se usa por convención para indicar que la variable es temporal. Por ejemplo, en bucles for
donde no se utiliza el valor sobre el que itera o al desempaquetar objetos en variables.
El carácter subrayado también se usa en las sesiones interactivas de Python para obtener el último resultado. Algo que puede ser útil en diferentes situaciones.
En esta entrada se ha visto el significado de los nombres de métodos o variables subrayadas en Python. En algunos casos solamente son una convención para hacer un el código más legible. Aunque en otros casos si que son tenidos en cuenta por el interprete de Python.
Imágenes: Pixabay (sandid)
En ciencia de datos y estadística, los promedios y porcentajes son herramientas fundamentales para resumir…
Las bases de datos son el corazón de casi cualquier sistema de información moderno. Ya…
En ciencia de datos, pocas cosas llaman más la atención de los científicos de datos…
Calcular adecuadamente el tamaño de la muestra es una parte esencial en el diseño de…
Hoy en día, cuando pensamos en ciencia de datos, lo primero que nos viene a…
Ampliar el espacio de almacenamiento en un sistema Linux es una tarea habitual y crítica…
This website uses cookies.