Como saber si un parametro es una secuencia

Hernán Martínez Foffani hernan en orgmf.com.ar
Jue Dic 16 12:17:54 CET 2004


>> No se, quiza sea una solucion un poco 'cateta' por mi parte, pero
>> ¿que tal iria un len(variable)? Un saludo,
>
>>>> len(3)
> Traceback (most recent call last):
>   File "<pyshell#10>", line 1, in ?
>     len(3)
> TypeError: len() of unsized object
>
> Si la variable no es una secuencia, el len da error porque no tiene
> sentido. Yo he pensado preguntar por hasattr(var, "__getitem__"), pero
> no estoy seguro de si forzosamente todas las secuencias tienen ese
> método, o si hay otra forma más elegante.

Depende lo que llames secuencia.  No hay una definición exacta.
Yo seguiría la línea que recomendó Josu pero sin función, directamente
intentaría con secuencia y ante la excepción procesaría como escalar.
Eso sí, ojo con lo strings.

-H.




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