숫자형 리스트를 단일 값으로 병합

숫자형 리스트 a = [1, 2, 3, 4, 5]를 단일값 12345로 변환하는 방법은?
리스트를 문자열로 변경한 뒤 그 문자열을 숫자로 변환하는 방법이 있지만 더 좋은 방법이 있다.
a = [1,2,3,4,5] >>> functools.reduce(lambda x, y: 10 * x + y, a, 0) 12345
JavaScript
복사
여기서 functools는 '함수를 다루는 함수'를 뜻하는 고계 함수를 지원하는 함수형 언어 모듈
(leetcode에는 기본적으로 import 되어있음)
reduce는 두 인수의 함수를 누적 적용하라는 메소드
>>> functools.reduce(lambda x, y: x + y, a) 15
JavaScript
복사
이외에도 가독성을 높일 수 있도록 operator 모듈을 활용하는 방법도 있음
>>> from operator import add, mul >>> functools.reduce(add, [1, 2, 3, 4, 5]) 15 >>> functools.reduce(mul, [1, 2, 3, 4, 5]) 120
JavaScript
복사