ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Python_upper_lower
    Programming/_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
Designed by Tistory.