Nombres de variables y funciones
Arnau Sanchez
arnau en ehas.org
Mar Oct 3 20:38:12 CEST 2006
Daniel Cabrera escribió:
> Variables:
> _variable
> __variable
> __variable__
>
> Funciones:
> _funcion
> __funcion
> __funcion__
>
> No se si habra algun otro tipo que use igual ese patron, pero por lo que
> entendi tiene una razon usar esos nombres, lo que no queda claro es cuando
> se debe usar esa nomenclatura.
Éste es un tema muy amplio que no sólo concierne el nombre de variables, sino
también el de métodos, clases, módulos, etc. Concretamente a lo que refieres en
tu pregunta, sí hay dos cosas claras:
- __xxxx__: se usa para funciones o atributos muy específicos de un objeto
(inicialización: __init__, documentación: __doc__, y un laaargo etcétera). No se
recomienda utilizar este formato para otras cosas, ya que no sólo despistas al
personal, sino que puede ser origen de incompatibilidades con futuras versiones
de python.
- __xxx se usa para variables "privadas". Entre comillas porque son sólo
privadas a efectos de no colisionar con otras variables de clases derivadas, no
porque no se pueda acceder a ellas desde fuera de la clase (a traves del
diccionario de la instancia). No existe por tanto, el típico "private" de otros
lenguajes.
...
A pesar de que no haya normas impuestas por el lenguaje, sí hay algunas guías
con indicaciones más o menos orientativas para que el código generado por
difentes programadores tenga cierta homogeneidad. Por ejemplo:
PEP de GvR:
http://www.python.org/dev/peps/pep-0008/
http://seesar.lbl.gov/ANAG/staff/sternberg/python-coding-standards.html
http://jaynes.colorado.edu/PythonGuidelines.html
(no funciona el enlace original, pongo el cache de google):
http://66.102.9.104/search?q=cache:TAQBFspDa4sJ:jaynes.colorado.edu/PythonGuidelines.html+%22As+project+size+increases,+consistency+increases+in+importance%22&hl=es&gl=es&ct=clnk&cd=1&client=firefox-a
Más información sobre la lista de distribución Python-es