Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Indexação e Fatiamento | Strings
Tipos de Dados em Python

bookIndexação e Fatiamento

Strings são sequências: cada caractere possui uma posição (um índice). Python utiliza indexação baseada em zero, então o primeiro caractere está no índice 0. É possível acessar caracteres individuais com indexação e intervalos de caracteres com fatiamento.

Indexação

Utilize colchetes com uma única posição.

123
s = "python" print(s[0]) # 'p' (first character) print(s[5]) # 'n' (sixth character)
copy

Índices negativos contam a partir do final.

123
s = "python" print(s[-1]) # 'n' (last character) print(s[-2]) # 'o' (second from the end)
copy

A indexação deve corresponder a uma posição existente; caso contrário, ocorre IndexError.

12
s = "python" print(s[10]) # IndexError: string index out of range
copy

Além disso, strings são imutáveis, portanto é possível ler s[i], mas não atribuir valores a ela.

12
s = "python" s[0] = 'P' # TypeError: 'str' object does not support item assignment
copy

Fatiamento

Um fatiamento utiliza start:stop:step e retorna uma nova string. stop é exclusivo (não é incluído).

12345
s = "python" print(s[1:4]) # 'yth' (indices 1,2,3) print(s[:4]) # 'pyth' (start defaults to 0) print(s[3:]) # 'hon' (stop defaults to len(s)) print(s[::2]) # 'pto' (every 2nd character)
copy

Fatiamentos são tolerantes: ultrapassar os limites apenas ajusta para valores válidos (sem erro).

12
s = "python" print(s[0:100]) # 'python'
copy

Índices negativos e inversão

É possível combinar índices negativos em fatias, e um step negativo percorre a sequência para trás.

123
s = "python" print(s[-3:]) # 'hon' (last three) print(s[::-1]) # 'nohtyp' (reverse)
copy
Note
Nota

step não pode ser 0. Omissão de step implica em 1. Omissão de start ou stop significa "do início" / "até o fim".

1. Qual valor este código irá exibir?

2. Qual valor este código irá exibir?

3. Qual afirmação gera um erro para u = "hello"?

question mark

Qual valor este código irá exibir?

Select the correct answer

question mark

Qual valor este código irá exibir?

Select the correct answer

question mark

Qual afirmação gera um erro para u = "hello"?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 2

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Suggested prompts:

Can you explain more about how slicing works with different step values?

What happens if I use both negative start and stop indices in a slice?

Can you give more examples of string immutability in Python?

Awesome!

Completion rate improved to 5

bookIndexação e Fatiamento

Deslize para mostrar o menu

Strings são sequências: cada caractere possui uma posição (um índice). Python utiliza indexação baseada em zero, então o primeiro caractere está no índice 0. É possível acessar caracteres individuais com indexação e intervalos de caracteres com fatiamento.

Indexação

Utilize colchetes com uma única posição.

123
s = "python" print(s[0]) # 'p' (first character) print(s[5]) # 'n' (sixth character)
copy

Índices negativos contam a partir do final.

123
s = "python" print(s[-1]) # 'n' (last character) print(s[-2]) # 'o' (second from the end)
copy

A indexação deve corresponder a uma posição existente; caso contrário, ocorre IndexError.

12
s = "python" print(s[10]) # IndexError: string index out of range
copy

Além disso, strings são imutáveis, portanto é possível ler s[i], mas não atribuir valores a ela.

12
s = "python" s[0] = 'P' # TypeError: 'str' object does not support item assignment
copy

Fatiamento

Um fatiamento utiliza start:stop:step e retorna uma nova string. stop é exclusivo (não é incluído).

12345
s = "python" print(s[1:4]) # 'yth' (indices 1,2,3) print(s[:4]) # 'pyth' (start defaults to 0) print(s[3:]) # 'hon' (stop defaults to len(s)) print(s[::2]) # 'pto' (every 2nd character)
copy

Fatiamentos são tolerantes: ultrapassar os limites apenas ajusta para valores válidos (sem erro).

12
s = "python" print(s[0:100]) # 'python'
copy

Índices negativos e inversão

É possível combinar índices negativos em fatias, e um step negativo percorre a sequência para trás.

123
s = "python" print(s[-3:]) # 'hon' (last three) print(s[::-1]) # 'nohtyp' (reverse)
copy
Note
Nota

step não pode ser 0. Omissão de step implica em 1. Omissão de start ou stop significa "do início" / "até o fim".

1. Qual valor este código irá exibir?

2. Qual valor este código irá exibir?

3. Qual afirmação gera um erro para u = "hello"?

question mark

Qual valor este código irá exibir?

Select the correct answer

question mark

Qual valor este código irá exibir?

Select the correct answer

question mark

Qual afirmação gera um erro para u = "hello"?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 2
some-alt