Python - alguien puede explicarme para que sirve el [:i+1]

 
Vista:
sin imagen de perfil
Val: 4
Ha disminuido su posición en 20 puestos en Python (en relación al último mes)
Gráfica de Python

alguien puede explicarme para que sirve el [:i+1]

Publicado por alexander (4 intervenciones) el 24/08/2019 03:43:13
1
2
3
4
5
6
7
8
9
def string_implosion(string):
  resultado=''
  for i in range(len(string)):
    resultado=resultado+string[:i+1]
    print (string[:i+1])
  return resultado
print(string_implosion('hola'))
 
#alguien puede explicarme para que sirve el [:i+1] y como funcionan los :
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

alguien puede explicarme para que sirve el [:i+1]

Publicado por tincopasan (1082 intervenciones) el 24/08/2019 05:39:23
Hola:
hay una propiedad que se conoce como slice que es básicamente cortar. En tu ejemplo hay una cadena contenida en la variable "resultado" la cual recibe "hola".
Entonces resultado = hola cada letra de la cadena ocupa un lugar comenzando desde 0 o sea: h =0 o =1 l=2 a=3
lo que va entre "[inicio:final]" ambos valores tienen por defecto el primer valor = 0 y el último en este caso =3
si usas resultado[1:3] = el inicio desde la posición 1 = o hasta la final 3(pero esta no se muestra)para verla debe ser [1:] o [1:4] cualquiera mostrará = ola
hay una tercera opción llamada salto(step)

resultado = "abracadabra"
resultado[::2] mostrará desde el inicio(por defecto):hasta el final(por defecto):saltando dos lugares
Claro que se pueden usar valores negativos para recorrer lugares desde atrás hacia adelante.
la forma más simple de mostrar una palabra al revés(palíndromo) es:

resultado[::-1]



lo que es:[:i+1],aunque no sé que pretende lograr es:
[inicio:f inal =i asume el valor del for desde 0 hasta 3 + 1]

usa print con una cadena y modifica [inicio:final:salto] para ver en que la afecta.
lo mismo con el for, imprimi "i" para ver que valor tiene en cada iteración
Espero que me entiendas, sino como te dije buscá slice y for
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Hector Madriz
Val: 361
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

alguien puede explicarme para que sirve el [:i+1]

Publicado por Hector Madriz (69 intervenciones) el 24/08/2019 05:52:33
Buen día, un string es un vector/lista/arreglo de caracteres y se tratan como tal.

Nombre[Desde:Hasta]
si se omite el Desde se asume la posición 0
si se omite el Hasta se asume la ultima posición


prueba esto:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Nombre="GUARICO"
# G  U  A  R  I  C  O  ---> caracter
# 0  1  2  3  4  5  6  ---> posición
 
print (Nombre)    #GUARICO
 
print (Nombre[:]) #GUARICO
 
print(Nombre[0])  # G
print(Nombre[1])  # U
print(Nombre[2])  # A
 
print(Nombre[:1]) # G
print(Nombre[:2]) # GU
 
print(Nombre[0:]) # GUARICO
print(Nombre[1:]) # UARICO
print(Nombre[2:]) # ARICO
 
print(Nombre[2:5]) # ARI
print(Nombre[1:3]) # UA

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar