11장 내장함수 , 람다식 , 제너레이터 , 모듈
1.내장함수
all() - 시퀀스(리스트,딕셔너리 등)받아서 모든 항목이 참이면 true아니면 false반환
any()-시퀀스 객체에 있는 한개의 항목이라도 참인경우 참
bin()-정수의 이진표현 반환
eval)()-수식 계싼
map(함수 , 적용할 객체) - 반복가능한 객체(리스트,튜플)의 각 항목에 주어진 함수를 적용한 후 적용 결과 반환
dir() - 객체가 가지고있는 함수나 변수 보여줌
enumerate() -시퀀스 객체를 입력받아 열거형 객체 반환
filter(함수, 객체) -특정조건 만족하는 객체만 반환
zip()-두개의 리스트를 하나로 묶어줌.
2.정렬 탐색
sorted() 내장함수 - 새로운 정렬된 리스트 반환 , 어떤 객체든 가능
sort()메소드 - 리스트 자체를 변경해버림 , 리스트만의 메소드
key매개변수
:정렬전 각 요소에 호출됨
학번을 기준으로 정렬
오름차순 내림차순
방금까진 오름차순,
내림차순하려면
reverse = True
정렬기준이 되는 함수 만들기
람다식 : 무명 함수, 이름이 없고 몸체만 있는 함수
:def키워드로 작성 하지 않음.
lambda키워드로 작성
여러개의 매개변수 가질 수 있음, 반환값은 하나임. 자신만의 이름공간 가짐.
리스트 요소마다 2곱하기
reduce(func,seq)함수는 func()함수를 seq에 연속적 적용해 단일 값 반환
3.이터레이터 : 반복 가능한 객체
: for루프와 함께 사용가능한 여러 종류의 반복 가능한 객체
:이터레이션이 반복을 의미하므로
이터레이터 조건
__iter__()은 반복가능한 객체 자신을 반환
__next__()은 다음 반복을 위한 값 반환 더이상의 값이 없으면 예외 발생
-클래스 이용해 반복가능 한 객체 생성
4.제너레이터 :
:키워드 yield를 사용해 함수로부터 반복가능한 객체를 생성하는 하나의 방법
-함수 이용해 반복가능한 객체 생성
-yield 문 사용해 함수를 제너레이터 로 정의함..
파보나치 수열 : 두수의 합이 바로 뒤의 수가 되는
연산자 오버로딩
:연산자 메소드를 정의하는것
:이용시 여러가지 연산자들을 클래스들이 메소드로 연결 가능
클래스에서 연산자 정의하기
모듈
:함수나 변수 또는 클래스를 모아놓은 파일
-직접 만들기도 가능
만들기
copy모듈
얇은 복사 - 객체의 참조값만 복사되고 객체 자체는 복사 안됨.
깊은 복사 - 객체까지 복사 deepcopy()
random 모듈
:난수 발생
randint()는 정수범위 난수 생성. 정수구간 조정
sys모듈
:파이썬 인터프리터에 대한 다양한 정보 제공
파이썬 설치된 경로
time모듈
calendar모듈
달력 출력