Python - filter()
공식 문서 : http://docs.python.org/2/library/functions.html#filter 어떤 배열(리스트, 튜플)을 가지고 조건을 걸어서 새로운 배열을 생성해 낸다. 사용법 filter(function, iterable) 사용 예 a = [1, 2, 3, 4, 5, 6, 7, 8] #3 보다 큰 값들만 뽑아 보자 filter(lambda x : x > 3, a) #[4, 5, 6, 7, 8]
더보기
Python - map()
공식 문서 : http://docs.python.org/2/library/functions.html#map map 함수는 배열(리스트나 튜플)을 이용해 새로운 리스트를 만들어 낸다. map(function, iterable, ...) 형태로 사용한다. 사용 예 a = [1, 2, 3, 4, 5] map(lambda x: x * 2, a) #[2, 4, 6, 8, 10] b = (10, 20, 30, 40, 50, 60) map(lambda x: x ** 2, b) #[100, 400, 900, 1600, 2500, 3600] c = (100, 200, 300, 400, 500) map(lambda a, b: a + b, a, c) #[101, 202, 303, 404, 505]
더보기
Python - zip()
공식 문서 : http://docs.python.org/2/library/functions.html#zip python 에서 zip 함수는 두개 이상의 리스트나 튜플을 하나로 합칠때 사용한다. zip([iterable, ...]) 형식으로 사용한다. 사용 예 a = [1, 2, 3, 4, 5] b = ["Jan", "Feb", "Mar"] zip(a, b) # [(1, 'Jan'), (2, 'Feb'), (3, 'Mar')] c = (31, 28, 31) zip(a, b, c) #[(1, 'Jan', 31), (2, 'Feb', 28), (3, 'Mar', 31)] ※ 합치려는 배열이 서로 사이즈가 다른경우 둘중 작은쪽 사이즈를 따라간다.
더보기
Python - 수준 있는 디자인 패턴 (Advanced Design Patterns in Python)
원문 : http://pypix.com/python/advanced-data-structures/ List 에 대한 이해 다양한 숫자가 저장된 list가 있고 이 list 에서 0보다 큰 수의 제곱값을 가지는 새로운 list를 만들려고 할때 아래와 같이 코딩하곤 한다. num = [1, 4, -5, 10, -7, 2, 3, -1] filtered_and_squared = [] for number in num: if number > 0: filtered_and_squared.append(number ** 2) print filtered_and_squared # [1, 16, 100, 4, 9] 4, 5 행을 보면 for, if 문이 중첩되어 사용된다. 이 부부을 filter, lamda, map을 사용하여..
더보기