Tengo una pregunta, de el siguiente código: Si bien la longitud del string es 8, el último caracter se encuentra en la posición 7, pero ...

Santiago Pulido Peláez

Santiago Pulido Peláez

Pregunta
studenthace 6 años

Tengo una pregunta, de el siguiente código:

duda_strings.PNG Si bien la longitud del string es 8, el último caracter se encuentra en la posición 7, pero porque cuando le digo name[2:8] aparece hasta el último caracter y cuando le digo name[2:7] no aparece el último caracter?

Mil gracias

5 respuestas
para escribir tu comentario
    Luis Kennedy Saavedra Fuentes

    Luis Kennedy Saavedra Fuentes

    studenthace 5 años

    Hola santiago buenas tardes compañero!! De seguro ya tienes resulta tu duda a estas fechas! Igual aporto como se me hace entendible mas allá de todas las palabras técnicas para dar a entederlo!!

    >>>name = 'Santiago' >>>len(name) 8 S[0] [1] a[1] [2] n[2] [3] t[3] [4] i[4] [5] a[5] [6] g[6] [7] o[7] [8]

    La primera columna es cada caracter de la variable La segunda columna es el indice del caracter en la variable La tercera columna es el nUmero del caracter en la variable que ya len(name) nos verificó que es 8

    Entonces en slices (Rebanadas): name = [2:8] Estoy diciendo desde el indice 2 hasta el numero de caracter 8 Indice [2] = 'n' Hasta Caracter[8]='o'

    Si coloco name[3:7] si necesidad de ingresarlo en la consola ya se que que el indice 3 es: 't' y el num de caracter 7 es: 'g' Entonces me mostrarA: 'tiag'

    Y cuando escribimos:

    name[7]

    Entamos diciendo de la variable name, en el indice 7 y el indice 7 es : 'o' tal como te arrojó! :)

    Si escribimos:

    name[8]

    Dará error porque no hay indice 8

    Orlando Ramirez

    Orlando Ramirez

    studenthace 5 años

    hola Santiago, cuando haces slice en Python este no toma el segundo término sino el anterior a ese, [2:7] tomaría desde el segundo término hasta el sexto, en otro ejempli ti tomas desde el [0:6] tomaría desde la primera letra hasta la quinta.

    Imprimiento Santia

    Sergio Andres Gutierrez Zarate

    Sergio Andres Gutierrez Zarate

    studenthace 6 años

    En Python, cuando se hace la técnica de slicing o corte, hay que tener en cuenta que en el intervalo en el que se va a hacer una operación, el interprete toma como límite inferior el número a la izquierda de los dos puntos y como límite superior el (n-1) número a la derecha de los dos puntos, es decir, toma el intervalo como cerrado por derecha y abierto por izquierda. En temas de indexación también hay que recordar que solo se hace con números enteros.

    Sergio Rubiano

    Sergio Rubiano

    studenthace 6 años

    Cuando le dices a tu variable name[2:8] lo que le estas dando a entender es que recorra desde el indice 2 pero que no vaya a tomar el indice 8, recuerde que comenzamos a contar desde 0

    Sergio Rubiano

    Sergio Rubiano

    studenthace 6 años

    Hola santiago, averigua todo sobre los Slice en python

Curso Práctico de Python

Curso Práctico de Python

Aprende a programar en Python creando un CRUD desde cero. Construye una aplicación de línea de comandos, interactúa con bases de datos y maneja conceptos como clases, listas y diccionarios. Lleva tu primer proyecto Python al siguiente nivel.

Curso Práctico de Python
Curso Práctico de Python

Curso Práctico de Python

Aprende a programar en Python creando un CRUD desde cero. Construye una aplicación de línea de comandos, interactúa con bases de datos y maneja conceptos como clases, listas y diccionarios. Lleva tu primer proyecto Python al siguiente nivel.