더북(TheBook)

3. 완성된 결과를 하나의 문자열로 만들어서 반환합니다.

수정 완료된 문자 배열은 다시 하나로 합쳐 문자열로 만듭니다. 문자열을 배열로 변환할 때는 list로 감싸면 되지만 배열에서 문자열로 변환할 때는 ''.join()을 사용해야 합니다.

return ''.join(s)

전체 코드

4장/시저_암호.py

def solution(s, n):
    s = list(s)
    for i in range(len(s)):
        if s[i] == ' ': continue
        corr = ord('A') if s[i].isupper() else ord('a')
        s[i] = chr((ord(s[i]) - corr + n) % 26 + corr)

    return ''.join(s)

주어진 알파벳이 어디에 위치하는지 알려면 알파벳의 아스키 코드를 외워야 할 것 같지만, 그냥 해당 단어 자체를 ord() 함수를 사용해 숫자로 만들면 꼭 외우지 않아도 똑같은 작업을 할 수 있습니다. 물론 아스키 코드 문제는 알파벳을 자주 사용하기 때문에 외워두면 좋습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.