[Python-es] Mayusculas y minusculas en una secuencia

alito alito81 en gmail.com
Mar Mayo 24 15:26:05 EDT 2016


Si, es verdad, sale con l2.
Gracias por el comentario y la corrección.


El 24/05/16 a las 03:12, Chema Cortes escribió:
> El mar., 24 may. 2016 a las 3:28, alito (<alito81 en gmail.com 
> <mailto:alito81 en gmail.com>>) escribió:
>
>     Hola a todos:
>
>     Tengo un pequeño codigo que no se como hacer que sea iterativo, yo se
>     que para ustedes es fácil pero para mi se me ha complicado un poco.
>
>     Quiero convertir a mayusculas una region determinada de una secuencia.
>     La region esta en la primera linea y la region de la secuencia que
>     quiero cambiar esta en la segunda linea.
>
>     Logro que lea la region y posteriormente cambie a mayusculas la
>     region,
>     pero cuando son varias regiones me da por separado las secuencias y no
>     en la misma secuencia.
>
>
> Cuesta entender lo que quieres si no aclaras mejor los términos que usas.
>
> Cuando te refieres a "secuencias", mejor que digas "cadenas de 
> caracteres" o, directamente, "strings". Las "secuencias" suelen ser 
> algo similar a listas que se procesan de modo secuencial.
>
> Por lo que se ve, en la primera línea tienes parejas de números que 
> delimitan las regiones que quieres cambiar, mientras que en la segunda 
> estaría la cadena a cambiar.
>
>     Mi código esta asi:
>
>          for line in x:
>
>             inp = open("archivo", "r")
>
>              x = inp.readlines()
>              l1 = x[0].strip().split(",")
>              l2 = x[1].strip()
>              for j in range(1,len(l1)-1):
>                  reg = l1[j].split("-")
>                  reg1 = int(reg[0])
>                  reg2 = int(reg[1])
>                  c1 = l2[:(reg1-1)] + l2[(reg1-1):reg2].upper() +
>     l2[(reg2):]
>                  print str(reg1) + " - " + str(reg2)
>                  print c1
>
>
> Lo que no entiendo es qué era 'x' antes de entrar en el bucle for, que 
> luego cambias dentro del bucle. Algo está mal en este código.
>
> Pero estudiando el código, guardas la línea a cambiar en 'l2' y usas 
> 'c1' como espacio temporal donde cambiar una región a mayúsculas. Si 
> lo que quieres es cambiar varias regiones, basta con que uses 'l2' en 
> lugar de 'c1', de modo que en cada iteración se irán cambiando a 
> mayúsculas cada una de las regiones. Basta imprimir 'l2' al final del 
> bucle.
>
>     Este es un ejemplo de un archivo sin que se haya convertido a
>     mayusculas:
>
>     #region 1-15, 17-20, 30-45
>
>     estaeslasecuenciaquemegustariaqueestuvieraenmayusculascadavezqueelprogramaencuentrelasregionesindicadas
>
>
>     Este es un ejemplo de como me gustaria que quedara el archivo una vez
>     que se corra el programa:
>
>     #region 1-15, 17-20, 30-75
>
>     ESTAESLASECUENcIAQUemegustarIAQUEESTUVIERAENMAYUSCULASCADAVEZQUEELPROGRAMAencuentrelasregionesindicadas
>
>     Agradezco su ayuda
>     _______________________________________________
>     Python-es mailing list
>     Python-es en python.org <mailto:Python-es en python.org>
>     https://mail.python.org/mailman/listinfo/python-es
>     FAQ: http://python-es-faq.wikidot.com/
>
> -- 
> Hyperreals *R  "Quarks, bits y otras criaturas infinitesimales": 
> http://ch3m4.org/blog
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> https://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/


------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20160524/ff0f0b35/attachment.html>


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