def solution(s, n):
result = []
for i in s :
if i == " " :
result.append(" ")
else :
ask = ord(i) + n
if ask > ord("z") :
ask_r = ord("a")-1 + (ask-ord("z"))
result.append(chr(ask_r))
elif i.isupper() and ask > ord("Z") :
ask_r = ord("A")-1 + (ask- ord("Z"))
result.append(chr(ask_r))
else :
result.append(chr(ask))
return ''.join(result)
문자를 아스키코드로 변형하여 n만큼 움직여준 뒤, 리스트에 추가해주는 방법
n만큼 이동한 아스키코드가 z(또는 Z)보다 크다면, 다시 a 혹은 A로 돌아와서 ask-ord("z") 만큼 움직여준다.
'Algorithm > Programmers' 카테고리의 다른 글
[Python] 자릿수 더하기 (0) | 2021.04.27 |
---|---|
[Python] 약수의 합 (0) | 2021.04.27 |
[Python] 주식가격 (0) | 2021.04.22 |
[Python] 프린터 (0) | 2021.04.22 |
[Python] 다음 큰 숫자 (0) | 2021.04.19 |