Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/07/2013, 14:20
Avatar de Instru
Instru
 
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 21 años, 5 meses
Puntos: 52
Manipulacion de caracteres en python3

Hola. Tengo una duda. Primero, como dice el titulo, estoy usando la version3 de python.

Por lo que he leido, en esta version ya todas las cadenas de caracteres usan unicode.

Ahora, dentro del programa que estoy haciendo hago cierta manipulacion de cadenas caracter por caracter. Y pues el unicode me ha dado mas problemas que soluciones. Afortunadamente todo fue solucionado. Pero al igual que en posts pasados, quisiera saber si esta es la forma correcta de trabajar con cadenas.

Pongo un ejemplo:

Código:
currentline = str(line.strip()) 
if len(currentline) == 0 \
or currentline[2] == '\n' \
or currentline[2] == ';':
Anterior a este codigo, tengo un for que lee una linea de texto de un archivo a la vez. Lo que hago es usar str para convertirlo a byte-string. Sin embargo, me agrega una b y un apostrofe '. Por lo tanto mi texto comienza en 2 en vez de 0.

Estoy muy acostumbrado aun a C, C++ y PHP. Entonces no se si esto sea normal... que las cadenas empiezen en 2, en vez de 0, gracias a los caracteres adicionales que se agregan.

Alguien tiene alguna sugerencia?

Saludos

PD: Oohh, lo olvidaba. el metodo split no funciona con unicode. O la verdad no se que pasa, porque si no uso str(currentline), me lanza una excepcion en donde intento usar split.