Python
팰린드롬
  • list, map, int, str
  • list, map, int, str

    Created by
  • 서경태
  • Created at
    자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
    예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.
    str : 정수를 문자열로 바꿔준다.
    str(345) → 숫자가 아닌 문자로 인식한다.
    그러므로, str(345) - 2 = 문자 - 숫자
    map(function, iterable)
    function : iterable의 각 요소에 적용할 함수.
    iterable : 반복 가능한 객체(리스트, 튜플 등)
    map은 반복해서 함수를 적용하는 구문이다.
    map(int, str(n))이라고 쓰면, 문자로 바뀐 숫자n을 정수로 바꿔주는 함수다.
    int : 문자를 정수로 바꿔준다.
    list : 객체를 리스트로 변환한다.
    a = "hello"
    list_a = list(a)
    print(list_a) = ['h', 'e', 'l', 'l', 'o']
    처럼 각 객체를 리스트 바꿔준다.
    다시 문제로 돌아와서, 정답은
    def solution(n):
    answer = list(map(int, str(n)))
    return sum(answer)
    n을 문자열로 바꿔주고 다시 정수로 바꾸주는 map 함수를 쓴다음 list로 각 자릿수를 객체로 만든다. 그리고 이 모두를 더하면 정답이 된다.