이 문서는 파이썬 2점대를 기준으로 작성되었습니다.
10장 함수
[람다함수]
lambda 콤마로 구분된 인수들 : 식 #labmda x, y : x + y
[함수적 프로그래밍 - map 내장함수, 순서쌍 만들기]
map(f, X) #f:사상함수 X: 입력집합
X = [1,2,3,4,5]
Y = map(labda a:a*a, X)
map(None, [1,2,3], [4,5,6,7,8]) #순서쌍. 첫 인수 None
#[(1,4), (2,5), (3,5),(None, 7), (None,8)]
cf)zip([1,2,3], [4,5,6,7,8]) #[(1,4), (2,5), (3,5)]
[함수적 프로그래밍 - filter 내장함수, 시퀀스 자료중 필터링하여 참인 요소만 출력]
filter(lambda x:x>2, [1,2,3,34]) #[3, 34]
[함수적 프로그래밍 - reduce 내장함수]
reduce( 함수, 시퀀스형[, 초기값] )
reduce(lambdz x, y : x+y, [1,2,3,4,5]) #15
[함수객체의 속성]
def f():
pass
f.__doc__ #문서 문자열
f.func_doc
f.__name__ #함수의 이름
f.func_name
f.func_defaults #기본 인수 값들
f.func_code #함수의 코드 객체
f.func_globals #전역 영역
[함수의 코드객체 func_code]
code = func_code
code.co_name #함수의 이름
code.co_argcount #필수적인 인수의 개수
code.co_nlocals #전체 지역 변수의 수
code.co_varnames #지역 변수의 이름들
code.co_code #코드 객체의 바이트 코드 명령어
code.co_names #바이트 코드가 사용하는 이름들
code.co_filename #코드 객체를 포함하는 파일 이름
code.co_flags #코드객체가 가변 인수(*args, 0x04)와 키워드 인수(**kw, 0x08)를 갖는지 검사
#(하위 두개의 비트는 내부적으로 사용)
※출처 : 프리렉 파이썬_이강성 저
[ 참고 ] 파이썬 정리 포스팅들
--------------------------------------------------
[파이썬] python 문자열 함수정리
[파이썬] python 리스트 함수정리
[파이썬] python 튜플 함수정리
-------------------------------------------------------------------------------
'Language > python' 카테고리의 다른 글
python 파이썬에서 ^M지우기, 행끝의 캐럿 M지우기 (0) | 2014.05.27 |
---|---|
[파이썬] python 정규식 정리 (0) | 2014.05.23 |
[파이썬] python 파일 함수정리 (0) | 2014.05.23 |
[파이썬] python 객체의 복사 및 형 변환 함수정리 (0) | 2014.05.23 |
[파이썬] python 사전 및 집합 함수정리 (0) | 2014.05.23 |