코드카타 #3

문제

숫자인 num을 인자로 넘겨주면, 뒤집은 모양이 num과 똑같은지 여부를 반환해주세요.

num: 숫자
return: true or false (뒤집은 모양이 num와 똑같은지 여부)
num: 숫자
return: true or false (뒤집은 모양이 num와 똑같은지 여부)

EX

num = 123
return false
=> 뒤집은 모양이 321 이기 때문
num = 123
return false
=> 뒤집은 모양이 321 이기 때문
num = 1221
return true
=> 뒤집은 모양이 1221 이기 때문
num = 1221
return true
=> 뒤집은 모양이 1221 이기 때문
num = -121
return false
=> 뒤집은 모양이 121- 이기 때문
num = -121
return false
=> 뒤집은 모양이 121- 이기 때문
num = 10
return false
=> 뒤집은 모양이 01 이기 때문

풀이

def same_reverse(num):
    num_str = str(num)
    str(reversed(num_str))

    if str(num) == num_str and num>0:
        return True

    else:
        return False

매번 int -> str -> list로 변환해서 풀었었는데 그럴필요가 없었다
list 나 str 이나 index를 가지고 있는 배열이었던것 list, str 에서 각자 가지고 있는 method 만 활용해서 풀면 되는 것

일단 num을 str 으로 바꿔서 뒤집어 주고 reversed 로 뽑으면 객체로 출력되길래 str 으로 다시 만들어줬다.
이걸 기존 num 값과 비교 하고 음수일때는 항상 false 이니까 조건 추가해줘서 비교해줬다.

배운것

reversed(str or list)
(str or list).reverse()
하면 객체가 출력된다.
원하는 타입으로 변경해줘서 사용해주자

좋은 웹페이지 즐겨찾기