¿Cómo obtengo una subcadena de una cadena en Python? [duplicar]
Quiero obtener una nueva cadena desde el tercer carácter hasta el final de la cadena, por ejemplo myString[2:end]
. Si omitir la segunda parte significa 'hasta el final', y si omites la primera parte, ¿comienza desde el principio?
Aceptado
>>> x = "Hello World!"
>>> x[2:]
'llo World!'
>>> x[:2]
'He'
>>> x[:-2]
'Hello Worl'
>>> x[-2:]
'd!'
>>> x[2:-2]
'llo Worl'
Python llama a este concepto "rebanar" y funciona en más que solo cadenas. Eche un vistazo aquí para obtener una introducción completa.
Sólo para completar, ya que nadie más lo ha mencionado. El tercer parámetro de un segmento de matriz es un paso. Entonces invertir una cadena es tan simple como:
some_string[::-1]
O seleccionar caracteres alternativos sería:
"H-e-l-l-o- -W-o-r-l-d"[::2] # outputs "Hello World"
La capacidad de avanzar y retroceder a través de la cadena mantiene la coherencia al poder dividir la matriz desde el principio o el final.