[pyar] [Consulta]Programación: constante

Angel Java Lopez ajlopez2000 en gmail.com
Dom Mar 4 19:32:46 ART 2012


Hola gente!

Ah! Interesante tema....

Hmmm... no me cierra lo de:

"Lo que no existe es la constante "con nombre" porque en python la
asignación es en realidad creación de alias para objetos."

Se me ocurren lenguajes donde puedo tener creacion de alias, pero si los
objetos apuntados son inmutables (como lo son los enteros y strings en
Java, .NET, etc... (no se si son inmutables los string en Python)),
entonces bastaria agregar "variables" writeonce (o assign-once) declarando
algo como

const ONE = 1

una "variable"/"alias"/"punterosiquierenverloasi" que se puede asignar una
vez y solo una vez, para tener semantica de constantes.

Es asi? O como es como escribe Roberto, un tema derivado de tener alias? O
hay algo mas en Python que impide o por lo menos complica tener constantes?

No se si me explique bien... a ver... busco, y encuentro via Google:
http://software-carpentry.org/4_0/python/alias/

If the data in question is immutable—i.e., if it cannot be modified in
place—then aliasing doesn’t matter

Ahi muestra aliasing de dos nombres contra el string "isaac". Eso es lo que
pasa en Java y en .NET. Sin embargo, ahora que lo leo, me surge una duda:
el autor no grafica aliasing para enteros en Python (pone un arreglo donde
cada elemento apunta a un numero 1 , "diferente", en vez de que cada
elemento apunte al mismo 1). Eso de no tener aliasing de enteros, aparece
hasta en implementaciones de Smalltalk, que seria el "papa de todos los
aliasing". ;-)

Mientras, buscando, encontre
http://stackoverflow.com/questions/2682745/creating-constant-in-python
http://code.activestate.com/recipes/65207-constants-in-python/?in=user-97991

Nos leemos!

Angel "Java" Lopez
http://www.ajlopez.com/
http://twitter.com/ajlopez


2012/3/4 Roberto Alsina <ralsina en netmanagers.com.ar>

> On 03/04/2012 06:18 PM, Diva Satanica wrote:
>
>> Hola gente preguntonta por no decir (B.....DA), porque no existe la
>> constante en python?
>> PS: Valen las puteadas por la pregunta
>> Gracias, saludos
>>
>
> <explicación probablemente errónea>
>
> Las constantes existen! 2 es una constante :-)
>
> Lo que no existe es la constante "con nombre" porque en python la
> asignación es en realidad creación de alias para objetos.
>
> O sea, x = 2 no "guarda 2 en x" si no que "crea un nombre x que apunta al
> objeto 2". Con esa semántica, las constantes no tienen mucha cabida.
>
> </explicación probablemente errónea>
>
> ______________________________**_________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/**listinfo/pyar<http://listas.python.org.ar/listinfo/pyar>
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20120304/bbe20fea/attachment.html>


More information about the pyar mailing list