Desloque uma string
Você vai criar um gerador que, dada uma string, produz uma sequência de caracteres constituintes deslocados por um número especificado de posições shift. Por exemplo, a string 'sushi' produz a sequência 'h', 'i', 's', 'u', 's' quando deslocamos 2 posições à direita (shift = 2). Quando deslocamos 2 posições à esquerda (shift = -2), a sequência resultante será 's', 'h', 'i', 's', 'u'.
Dica: use o operador % para percorrer os índices válidos. Aplicá-lo a um número positivo ou negativo gera um resto não negativo, o que pode ajudar ao deslocar seu índice.
Por exemplo, considere a variável string = 'python', que contém uma string de 6 caracteres:
2 % 6 = 2(logo,string[2 % 6]ét)0 % 6 = 0(logo,string[0 % 6]ép)-2 % 6 = 4(logo,string[-2 % 6]éo)
Este exercício faz parte do curso
Praticando questões de entrevista de código em Python
Instruções do exercício
- Itere sobre os índices de uma string usando a variável fornecida
len_string. - Descubra qual caractere corresponderá ao índice quando realizarmos o deslocamento.
- Crie um gerador que desloque a string
'DataCamp'em 3 posições para a direita (isto é,"ampDataC"). - Crie uma nova string usando o gerador e imprima-a.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
def shift_string(string, shift):
len_string = len(string)
# Loop over the indices of a string
for idx in ____:
# Find which character will correspond to the index.
____ ____[____]
# Create a generator
gen = ____
# Create a new string using the generator and print it out
string_shifted = ''.____
print(string_shifted)