문제 풀이/Programmers
[python3][level 3] 시저 암호
[잉간]
2018. 5. 9. 11:13
isalpha() 함수와 isspace() 함수를 이용하여 문자와 공백을 구분한다.
그런 다음 isupper() 함수를 이용해 대소문자를 구별하고 n만큼 밀어서 result 변수에 대입한다.
문제풀이
def caesar(s, n): result = "" for Rpt in s: if Rpt.isalpha(): if Rpt.isupper(): result += chr((ord(Rpt) - ord("A") + n) % 26 + ord("A")) else: result += chr((ord(Rpt) - ord("a") + n) % 26 + ord("a")) elif Rpt.isspace(): result += " " return result # 실행을 위한 테스트코드입니다. print('s는 "a B z", n은 4인 경우: ' + caesar("a B z", 30))