[문제 설명]
영어 알파벳으로 이루어진 문자열 str이 주어집니다.
각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요.
[제한사항]
1 ≤ str의 길이 ≤ 10
str은 알파벳으로 이루어진 문자열입니다.
[입출력 예]
입력 #1)
aBcDeFg
출력 #1)
AbCdEfG
[나의 풀이]
str = input()
a = []
# 1. 알파벳이 소문자인지 대문자인지 판별하여 상호변환
for i in str:
if i.islower():
a.append(i.upper())
else:
a.append(i.lower())
# 2. list인 a를 문자열로 바꾸기
print(''.join(a))
[설명]
1. 알파벳이 소문자인지 대문자인지 판별하여 상호변환
(대문자는 소문자로 / 소문자는 대문자로)
str = 'aBcDeFg'
a = []
for i in str:
if i.islower():
a.append(i.upper())
print(a)
else:
a.append(i.lower())
print(a)
Out[1]:
['A']
['A', 'b']
['A', 'b', 'C']
['A', 'b', 'C', 'd']
['A', 'b', 'C', 'd', 'E']
['A', 'b', 'C', 'd', 'E', 'f']
['A', 'b', 'C', 'd', 'E', 'f', 'G']
> 대문자인지 확인 : string.isupper()
> 소문자인지 확인 : string.islower()
> 대문자로 바꾸기 : string.upper()
> 소문자로 바꾸기 : string.lower()
2. list인 a를 문자열로 바꾸기
print(a)
print(''.join(a))
Out[2]:
['A', 'b', 'C', 'd', 'E', 'f', 'G']
AbCdEfG
[다른 사람 풀이 1]
print(input().swapcase())
[설명]
str = 'aBcDeFg'
print(str.swapcase())
Out[3]:
AbCdEfG
> swapcase()
: 대문자를 소문자로, 소문자를 대문자로 상호 변환해 주는 함수
[다른 사람 풀이 2]
str = input()
for i in str:
if i.islower():
print(i.upper(),end='')
else:
print(i.lower(),end='')
> 알파벳을 상호 변환하여 끝을 ''로 만들기
[다른 사람 풀이 3]
ans = ''
for a in input():
if a.isupper():
ans += a.lower()
else:
ans += a.upper()
print(ans)
> 알파벳을 상호 변환하여 ans에 하나씩 추가
'Test > python' 카테고리의 다른 글
문자열 섞기 (0) | 2023.05.05 |
---|---|
문자열 겹쳐쓰기 (0) | 2023.05.02 |
안전지대 (enumerate) (0) | 2023.04.22 |
약수 구하기 (0) | 2023.04.19 |
겹치는 선분의 길이 ( set , &, | ) (0) | 2023.04.18 |