시작하기무료로 시작하기

문자열 인덱싱과 연결

여러분은 가장 오래된 암호화 기법 중 하나인 Caesar 암호를 보게 됩니다. 이 방법은 주어진 알파벳에서 메시지의 각 문자를 일정한 칸수만큼 아래로 이동시키는 간단한 원리에 기반해요. 예를 들어, 영어 알파벳에서 'xyz'를 1칸 이동하면 'yza'가 되고, 복호화의 경우에는 그 반대로 이동합니다. 이때 'z''a'가 된다는 점에 유의하세요.

따라서 암호화/복호화에는 두 개의 인수가 필요합니다: 텍스트와 이동을 나타내는 정수 키(위 예시에서는 key = 1).

여러분의 과제는 alphabet 문자열에 저장된 영어 알파벳을 이용해 암호화 함수를 만드는 것입니다.

이 연습은 강의의 일부입니다

Python으로 코딩 인터뷰 문제 연습하기

강의 보기

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

def encrypt(text, key):
  
    encrypted_text = ''

    # Fill in the blanks to create an encrypted text
    for char in text.lower():
        idx = (alphabet.____(____) + ____) % len(____)
        encrypted_text = encrypted_text + alphabet[idx]

    return encrypted_text

# Check the encryption function with the shift equals to 10
print(____("datacamp", ____))
코드 편집 및 실행