¿Existe substring, substr o algo similar en python?

En Python hay algunas cosas que sorprenden a los recién llegados que tienen experiencia en otros lenguajes de programación. Una habitual es que no hay switch en Python. Otra que también despista bastante es que no existe una función como substr.

¿Cómo se puede extraer parte de una cadena o string en Python?

La solución para hacer esto es usar el siguiente método:

Donde cadena es una variable que contiene una cadena, comienzo es un entero con el que indicamos desde qué posición queremos a extraer y con fin marcamos el final. La cadena extraída será desde comienzo hasta fin-1.

Nota: la primera posición de la cadena es la posición 0.

Por ejemplo:

El resultado es ‘H’ porque estamos pidiendo desde el elemento 0 (el primero) hasta el elemento 0 (recordemos que es fin-1).

Aquí el resultado es una cadena vacía puesto que empezamos en 1 y terminamos en 0 (1-1).

Aquí recogemos desde la posición 1 hasta la 1 (2-1). Por eso sale sólo la ‘o’. A veces resulta confuso porque el segundo número (fin) no indica la longitud de la subcadena que queremos sino la posición del último elemento de la misma.

Y aquí os dejo otros ejemplos:

Más información: http://docs.python.org/release/2.3.5/whatsnew/section-slices.html

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.