[프로그래머스] 자연수 뒤집어 배열로 만들기

Minyoung Lee·2023년 1월 3일

Programmers

목록 보기
7/15
post-thumbnail

문제 링크

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

개념 & 문법

* reverse, reversed(): 리스트의 요소를 뒤집을 때 사용

1. reverse(): list 함수

  • list.reverse(): list.sort() 와 같이 값 변환 없이 list 자체를 변형
  • tuple, dict, str엔 없음
l = ['a', 'b', 'c']
t = ('a', 'b', 'c')
d = {'a': 1, 'b': 2, 'c': 3}
s = 'abc'

l.reverse()  # list의 순서를 뒤집어줌
t.reverse()  # AttributeError: 'tuple' object has no attribute 'reverse'
d.reverse()  # AttributeError: 'dict' object has no attribute 'reverse'
s.reverse()  # AttributeError: 'str' object has no attribute 'reverse'

2. reversed(): 파이썬 내장함수

  • sequential value만 사용 가능(그러므로 dict는 안됨)
  • 전부 list, tuple 형태로 반환하지 않고 reversed object/iterator로 반환
  • 그러므로 출력 시엔 형태 바꿔야함.
l = ['a', 'b', 'c']
t = ('a', 'b', 'c')
d = {'a': 1, 'b': 2, 'c': 3}
s = 'abc'

reversed(l)  # <listreverseiterator object at 0x101053c10>
reversed(t)  # <reversed object at 0x101053b50>
reversed(d)  # TypeError: argument to reversed() must be a sequence
reversed(s)  # <reversed object at 0x101053c10>

코드

def solution(n):
    answer = list(map(int, str(n)))
    answer.reverse()

최적 코드

def solution(n):
    return list(map(int, reversed(str(n)))) #str(n)[::-1]
profile
웩알고👩‍💻

0개의 댓글