TIL. 25 CodeKata#2

1376 단어 codekataTILTIL

Question

reverse 함수에 정수인 숫자를 인자로 받습니다.
그 숫자를 뒤집어서 return해주세요.

x: 숫자
return: 뒤집어진 숫자를 반환!

예들 들어,
x: 1234
return: 4321

x: -1234
return: -4321

x: 1230
return: 321

풀이

def reverse(number):
  new_num = str(number)[::-1]
  if number < 0:
    new_num = "-" + new_num[:-1]
  return(int(new_num))

indexing, slicing 가능한 str을 이용하고 마지막 리버스 되었을때 0을 제거하기 위해서 int()를 활용.

https://www.w3schools.com/python/python_howto_reverse_string.asp을 참고함.

There is no built-in function to reverse a String in Python.
The fastest (and easiest?) way is to use a slice that steps backwards, -1.

ex)
Reverse the string "Hello World":
txt = "Hello World"[::-1]
print(txt)

다른 풀이

def reverse(number):
    if number >= 0:
        temp = list(str(number))
        temp.reverse()
        return int(''.join(temp))
    elif number < 0:
        temp = list(str(number)[1:])
        temp.reverse()
        return int(''.join(temp)) * -1

좋은 웹페이지 즐겨찾기