El 18 de abril de 2012 11:08, Rock Neurotiko <miguelglafue...@gmail.com>escribió:
> ¿Has pensado en algo mas sencillo? > > Por ejemplo, sabemos que las mayusculas tienen un rango en el codigo > ascii, por lo tanto, solo tienes que recorrer el string con un for, y hacer: > > if (ord(string[i]) >= 65 and ord(string[i])<=90) or ord(string[i])==209: > De acuerdo contigo... Una manera, en mi opinión elegante sería crear una función simple que sea algo así como def es_mayuscula(caracter): return (ord(caracter>=65) and ord(caracter)<=90)) or ord(caracter)==209 y la llamas desde el programa principal mediante un for. > > > string es la cadena, i es el numero que va recorriendola, y ord es una > funcion para pasar de caracter a numero ascii. > > Compruebas que esté entre 65 y 90 (mayusculas) o que sea el 209, si > quieres contar tambien con la 'Ñ' :) > > El 18 de abril de 2012 17:33, alito s <alit...@gmail.com> escribió: > >> Hola a tod@s: >> Hoy vengo con un problema (seguramente para ustedes no es nada :D). Estoy >> haciendo un contador de mayúsculas. El archivo tiene mayúsculas y >> minúsculas. Al final quiero que me diga cuantas mayúsculas hay y cuáles son >> las más abundantes. Esto último ya lo conseguí. Mi problema real, radica en >> que la búsqueda de las mayúsculas solo me lo hace en la primera sección del >> archivo. Es decir, tengo algo como lo siguiente: >> >> >> mrlplllvfasvipgavllldtRQFLIYNEDHKRCVDAVSPSAVQTAACNQDAESQKFRWVSesqimsvafklcLGVPSKTDwvaitlyacDSKSEFQKWECKNDTaa >> >> Bueno mi script solo me busca: RQFLIYNEDHKRCVDAVSPSAVQTAACNQDAESQKFRWVS y >> ya no busca LGVPSKTD ni DSKSEFQKWECKNDT. >> >> El script es el siguiente: >> >> for line in myfile: >> findWords1 = re.compile(r"\n[A-Z]+", re.MULTILINE) >> for match in findWords1.finditer(myfile): >> words = match.group() sequence = (collections.Counter(words)) >> for x, count in sequence.most_common(10000): >> print "No. total:" + '%s: %1d' % (x, count) >> >> Un punto importante es que la búsqueda la realiza siempre y cuando >> encuentre un salto de línea antes. >> Saludos. >> >> _______________________________________________ >> Python-es mailing list >> Python-es@python.org >> http://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > > > -- > Miguel García Lafuente - Rock Neurotiko > Vocal de la Junta Directiva Nacional del Partido Pirata. > Coordinador de Jóvenes Piratas en Madrid. > > "Libertad en lugar de miedo." - "Información libre, sociedad libre." > > El contenido de este e-mail es privado, no se permite la revelacion del > contenido de este e-mail a gente ajena a él. > > > _______________________________________________ > Python-es mailing list > Python-es@python.org > http://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Asdrúbal Iván Suárez Rivera *El éxito de alguien que enseña no es que sepa mucho, sino que lo poco que sabe lo sepa hacer llegar.*
_______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/