-
Python_upper_lowerProgramming/_Python 2023. 6. 15. 23:11
코딩 테스트 문제를 준비하다보면 소문자를 대문자로, 대문자를 소문자로 바꾸는 문제가 간혹 보인다.
이를 Python에서 해결하는 몇가지 방법을 보자.
1. upper(), lower(), isupper(), islower()
string.upper()는 문자열을 대문자로 변경하는 함수이다.
my_string: str = "Test" upper_str: str = my_string.upper() print(my_string, upper_str) ## result: Test TEST
string.lower()는 문자열을 소문자로 변경하는 함수이다.
my_string: str = "Test" lower_str: str = my_string.lower() print(my_string, upper_str) ## result: Test test
string.isupper()는 객체 내부에 대문자가 있는지 검사를 하는 함수이다.
my_string1: str = "TEST" my_string2: str = "test" print(my_string1.isupper(), my_string2.isupper()) ## result: True, False
string.islower()는 객체 내부에 소문자가 있는지 검사를 하는 함수이다.
my_string1: str = "TEST" my_string2: str = "test" print(my_string1.islower(), my_string2.islower()) ## result: False, True
- 번외: isdigit(), isalpha(), isalnum()
isdigit()은 숫자, isalpha()는 알파벳, isalnum()은 알파벳과 숫자 모두가 있는지 검사를 하는 함수다. 이외에도 여러가지가 있으니 document를 보면 된다.
my_string1: str = "1234" my_string2: str = "test" my_string3: str = "123test" print(my_string1.isdigit(), my_string2.isdigit(), my_string3.isdigit()) ## result: True, False, False print(my_string1.isalpha(), my_string2.isalpha(), my_string3.isalpha()) ## result: False, True, False print(my_string1.isalnum(), my_string2.isalnum(), my_string3.isalnum()) ## result: True, True, True
2. ASCII(American Standard Code for Information Interchange)
ASCII: https://ko.wikipedia.org/wiki/ASCII
ASCII - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. 1972 프린터 사용 설명서에 개시된 아스키 코드 차트표 미국정보교환표준부호(영어: American Standard Code for Information Interchange), 또는 줄여서 ASCII( , 아스키)는 영문
ko.wikipedia.org
ASCII는 미국정보교환표준부호로 이를 사용하면 대소문자를 바꿀 수 있다.
대문자 A~Z는 십진수로 65 ~ 90, 소문자 a ~ z는 십진수로 97 ~ 122이다.
python에서 ASCII를 사용하려면 ord()와 chr()를 사용하면 된다.
ord()는 문자를 ASCII 숫자로 반환해주는 함수이고, chr()는 넣은 ASCII 숫자에 대응하는 문자를 반환해준다.
- upper
my_string: str = "Test" upper_str: str = "" for word in my_string: if (ord(word) >= 97): upper_str += chr(ord(word)-32) else: upper_str += word print(upper_str) ## result: TEST
- lower
my_string: str = "Test" upper_str: str = "" for word in my_string: if (ord(word) < 97): upper_str += chr(ord(word)+32) else: upper_str += word print(upper_str) ## result: test
3. swapcase()
swapcase()는 대소문자를 상호 전환해주는 함수로 입력값에서 대문자는 소문자로, 소문자는 대문자로 바로 반환해주는 함수다.
my_string: str = "Test" result_str: str = my_string.swapcase() print(result_str) # result: tEST
'Programming > _Python' 카테고리의 다른 글
Python_lambda (0) 2023.06.22 Python_function (0) 2023.06.21 Python? (0) 2023.06.15