728x90
문제
문자열이 주어질 때, 대문자는 소문자로, 소문자는 대문자로 바꾸는 프로그램을 작성하시오. 알파벳이 아닌 문자는 그대로 유지한다.
입력
첫 번째 줄에 문자열이 주어진다. ( 1 ≤ 문자열의 길이 ≤ 1,000 )
출력
문자열 내의 대문자는 소문자로, 소문자는 대문자로 바꾼 결과를 출력한다.
예제 입력
hELLO wORLD!
예제 출력
Hello World!
#코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
import sys
# 주의점 : 공백이 여러번 들어갔을 경우도 고려해야할 것
# 즉, Hello World! 같은 경우
# input().split9)으로 받으면 안된다.
if __name__ == "__main__":
input = sys.stdin.readline
# 아스키 A : 65 ~ Z : 90 -> a : 97 ~ z : 122
# 대소문자 차이 32
getStr = input()
resStr = ''
for i in getStr:
for j in i:
wordVal = ord(j)
if 65 <= wordVal <=90:
wordVal += 32
resStr += chr(wordVal)
elif 97 <= wordVal <=122:
wordVal -= 32
resStr += chr(wordVal)
else:
resStr += j
print(resStr)
|
cs |
반응형
'CS > 알고리즘_문제풀이(파이썬)' 카테고리의 다른 글
팰린드롬 조사 (0) | 2021.06.25 |
---|---|
문자열 뒤집기 (0) | 2021.06.25 |
과제물 망치기 (0) | 2021.06.25 |
combinationpascal (0) | 2021.06.25 |
combinationzero (0) | 2021.06.25 |