[프로그래머스][파이썬] 문자열 정렬하기 (1) - 정렬 (Level 0)

뻥튀기아이스크림·2025년 3월 17일
1
post-thumbnail

◽ 문제 출처

https://school.programmers.co.kr/learn/courses/30/lessons/120850

◽ 문제

◽ 입력 & 출력

◽ 내 풀이

def solution(my_string):
    answer = []
    
    for element in my_string:
        if ord(element) < 65:
            answer.append(int(element))
            
    answer.sort()
    return answer
  • 해당 문자의 아스키코드 값을 통해서 숫자인지 판단했다. ('A' == 65, 'a' == 97)
  • 문제 풀면서 처음 알았던게 반환할 때 sort() 함수를 사용하면 null 값이 반환된다.

◽ 다른 사람 풀이

def solution(my_string):
    return sorted([int(c) for c in my_string if c.isdigit()])
  • 역시 파이썬인가.. 문자열에서 숫자인지 판단하는 함수가 존재했다.
  • sorted() 함수는 직접 반환해도 되는것 같다.
  • sort() 함수는 원본이 변하니까 반환할 때 값이 담겨져야 하고, sorted() 함수는 복사된 값만 나오니까 그대로 반환해도 되는것 같다.

◽ 더 나아가기

  • isdigit() : 문자열이 모두 숫자로만 구성되어 있으면 True 를 반환한다.
  • 숫자가 아닌 문자, 공백, 기호, 소수점, 음수 기호 등이 포함되면 False 를 반환한다.



피드백은 언제나 환영입니다 :)

profile
성장하고 싶은 개발자

0개의 댓글