티스토리 뷰
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))
'문제 풀이 > Programmers' 카테고리의 다른 글
[python3][level 3] 2 x n 타일링 (0) | 2018.07.11 |
---|---|
[python3][level 1] 최댓값과 최솟값 (0) | 2018.06.11 |
[python3][level 2] 최솟값 만들기 (0) | 2018.05.03 |
[python3][level 2] 이상한 문자만들기 (0) | 2018.04.24 |
[python3][level 2] 소수 찾기 (0) | 2018.04.24 |
댓글