ayida con python =(

Iniciado por s1d4rt4, 18 Julio 2006, 21:35 PM

0 Miembros y 1 Visitante están viendo este tema.

s1d4rt4

hasta ahora iva todo bien, entendiéndo todo y bla bla bla... la cosa es que llegue a las cadenas, y entre los ejercicios k propone el tutorial que estoy siguiéndo, está el crear un programa k identifique cuantos números hay dentro de una frase...

x = raw_input('ingrese una frase: ')
n = 0                                           
for i in x:
    if i>=0 or i<=0:
        n+=1

if n>=1:
    print 'la cadena contiene', n, 'números'


la verdad no tengo idea donde está el error, no imaginan cuanto tiempo le he dedicado ¬¬ lo he escrito de mil formas y las mil formas no funcionan... esta en especial me dice k todo lo k escribo, inclusive las letras, son numeros ¬¬

sirdarckcat

jejeje
primero ve si lo que entra son numeros..
probablemente I regresa el valor ASCII del caracter, por lo que podrias hacer esto:

if i-48<=9 or i-48>=0

48 = ASCII('0')

Saludos!!

Division-x

prueba a usar un depurador y que te diga exactamente donde esta el error, pero ya te lo ha explicado Sdc, yo creo que es eso.

S4lu2

T1g3r

no le veo ningun error... funciona perfectamente en python 2.4 de windows....

Division-x

aaahhhhhh!!!!
perdon no lo entendi, pense que era un error de compilacion ;D ;D ;D ;D ;D
en ese caso, para el sentido comun no existe ningun depurador ;) ;) ;) ;) ;) ;) ;)

PD: HEMOS CONSEGUIDO EL FORO!!!!!!!!!!!!!!!!!!!!!!!!

s1d4rt4

Cita de: Tiger [AlBiCeLeStE] en 19 Julio 2006, 03:16 AM
no le veo ningun error... funciona perfectamente en python 2.4 de windows....
:o te funciona? probaste escribiendo algo así como 'tengo 21 años'
pork a mi me cuenta todo lo que ingreso como si fuesen números :-( hahahaha, por favor man, contestame ;D

pd: ejaleeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee foro de scripting ;D deberian mover este tema  ;D ;D ;D ;D

T1g3r

sin duda que funciona...  desime el error que te da :P

s1d4rt4

no es un 'error' jajaja es solo k el programa no hace lo que le pido...

por ejemplo, si ingreso: 'tengo 60 años', el programa debería devolver: 'la cadena tiene 2 números'

pero en vez de eso obtengo 'la cadena tiene 11 números'

:-\

Division-x

Cita de: Sdc en 18 Julio 2006, 21:48 PM
jejeje
primero ve si lo que entra son numeros..
probablemente I regresa el valor ASCII del caracter, por lo que podrias hacer esto:

if i-48<=9 or i-48>=0

48 = ASCII('0')

Saludos!!

Has probado con esto????????, yo lo hago asi y funciona ;) ;) ;)

s1d4rt4

mmmmmmmmm yo kreo k no lo estoy haciendo bien, pero me regresa

48 = ASCII('0')

File "<Module1>", line 10
SyntaxError: can't assign to literal