Re: Equivalencia de tipos, tipado fuerte y genéricos en python

David Casco djcasco en gmail.com
Mie Jun 8 04:24:28 CEST 2005


Según lo leído por mi python posee un tipado dinámico, los tipos se 
establecen en tiempo de ejecución y ala vez es fuertementemente tipado ya 
que una vez que adquieren un tipo de dato se lo puede tratar como otro salvo 
que se haga una conversion con anterioridad.
Como guía te puedo aconsejar que leas en el dive into python (inmersion en 
python en español) el capitulo 2 - declaracion de funciones en donde hace 
referencia a todo esto y compara con otros lenguajes.
Saludos David

El día 7/06/05, Cesar Cardenas Desales <cescd en yahoo.com.mx> escribió:
> 
> 
> --- majulvez en unedaragon.org escribió:
> 
> > Buenas tardes!!
> >
> > Soy nuevo en Python y mas nuevo en la lista
> > aún, y tengo unas
> > preguntas sobre Python relativas a su diseño.
> >
> > Sabe alguien como realiza python la equivalencia
> > de tipos para saber
> > si dos tipos son equivalentes y sus variables puedan
> > operar de la misma
> > forma?? Yo se q existen la nominal y la estructural
> > pero desconozco si
> > es aplicable a un lenguaje como python.
> 
> Básicamente si el objeto posee la propiedad que le
> solicites quiere decir que son equivalentes. Por
> ejemplo:
> 
> def compara(a, b):
> return a.__str__() == b.__str__()
> 
> def compara2(a, b):
> return a.prop == b.prop
> 
> class Foo:
> prop = 5
> 
> def __str__(self):
> return "cadena"
> 
> cad = "cadena"
> foo = Foo()
> print cad
> print foo
> 
> print compara(cad, foo) #True
> print compara(foo, cad) #True
> 
> print compara2(cad, foo) #Error 'str' object has no
> attribute 'prop'
> print compara2(foo, cad) #Error 'str' object has no
> attribute 'prop'
> 
> > Otra cosa, considerais a Python un lenguaje
> > fuertemente tipado?? Es
> > q he encontrado versiones contradictorias en
> > internet y no se muy bien a
> > q hacer caso. En algunos sitios dicen que sí q es
> > fuertemente tipado xq
> > se necesita una conversión explícita de tipos y q un
> > objeto siempre es
> > del mismo tipo y no se puede cambiar (parece ser q
> > en las últimas
> > versiones sí q se debe poder hacerlo aunque muy
> > especialmente) y en
> > otros dice q no, q no es fuertemente tipado. Mi
> > opinión es q sí q es
> > fuertemente tipado aunque vamos, no estoy al 100%
> > seguro.
> 
> La respuesta de GvR
> 
> http://www.artima.com/intv/strongweak2.html
> 
> > Ya la última pregunta. Si alguno habeis
> > programado en Ada o en
> > algunos otros lenguajes, este soporta tipos
> > genéricos. Python lo
> > soporta?? Igual estoy confundiendo el tipado
> > dinámico con los tipos
> > genéricos y me estoy haciendo un lio.
> >
> > Un saludo y gracias de antemano.
> > Nos vemos!!!
> >
> 
> Genericos? Pues no hay una sintaxis que directamente
> declare un tipo como genérico, sin embargo, la
> naturaleza del lenguaje lo permite: Mientras que en
> C++ o en Java(1.5) debes declarar que una colección
> será de tipo genérico, en Python una variable puede
> apuntar a un objeto de cualquier tipo
> 
> >>> s = ""
> >>> s = 1
> >>> s = []
> >>> s = {}
> 
> 
> >
> >
> >
> ----------------------------------------------------------------
> > Este mensaje ha sido enviado por el servidor de EFOR
> > e-Consulting.
> >
> > _______________________________________________
> > Python-es mailing list
> > Python-es en aditel.org
> > http://listas.aditel.org/listinfo/python-es
> >
> 
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> Regístrate ya - http://correo.yahoo.com.mx/
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es
> 



-- 
Que lo urgente no nos quite lo importante




Más información sobre la lista de distribución Python-es