una cadena de digitos

Toram josep.torrens en gmail.com
Sab Ene 8 16:30:06 CET 2005


On Sat, 8 Jan 2005 16:11:02 +0100, Darío López Llueca  wrote:
> On Sat, Jan 08, 2005 at 09:43:56AM -0500, Carlos Edurado Sotelo Pinto wrote:
> > sigo con mis pregunytas
> > eso pasa por arriesgarse a hacer un programa en python sin la
> > experiencia necesaria, pero si no era ahora cuando entocnes.....
> >
> > tengo una tupla de la siguiente manera
> > (nombres, direccion, numero)
> > estas estan almacenadas en una base dbf (de donde debo leer la info)
> > el detalle radica en que todos estos datos son cadenas y debo valdarlo
> > como hacerlo con numero si este debe ser solo digitos y algui me pone
> > por ejemplo 5m yla direccion debe ser solo digitos
> > se supone que si uso el int() me dara solo el cinco pero sigue
> > conteniendo info basura
> Corrigeme si me equivoco, pero si a int () le pasas la cadena '5m' te
> dará un error de ejecución. Supongo que habrán mejores soluciones, pero
> ahí vá una.
> 
> valido = 1
> for c in cadena_de_digitos:
>         if c not in ('0','1','2','3','4','5','6','7','8','9'):
>                 valido = 0
>                 break
> 
> if (!valido): print 'La cadena contiene "basura"'

Mejor con excepciones, no? (estan para eso)
....algo asi....

>>> a = ( "pep", "4m", 44)
>>> try:
...     c = int(a[1])
... except ValueError:
...     print "Error. Numero no valido"
...
Error. Numero no valido

Salut.,

-- 
Josep
http://toram.webpollencina.com

* I tu, encara uses Explorer i Outlook? -- http://breu.bulma.net/?l3541
* No accept arxius en format WORD: http://breu.bulma.net/?l3192




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