ComeçarComece de graça

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

Ver curso

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)
Editar e executar o código