study/python

반복자와 생성자

jjikky 2020. 12. 17. 03:58
반응형

반복자iterator

하나 이상의 항목이 포함되어 있는 자료구조에서 데이터를 순차적으로 꺼내어 이용할 수 있는 객체를 반복자 객체라고 한다.

 

 

 

 

 

 

 

 

반복가능 객체를 위한 내장함수

  • 파이썬의 반복가능iterable 객체는 다양한 내장함수들을 적용할 수 있다.
  • min()이나 max()와 같은 함수는 반복가능 객체를 인자로 받아서 최솟값과 최댓값을 반환하는데 이들 외에도 all(), any(), ascii(), bool(), filter(), iter()와 같은 고급 내장함수도 제공되고 있다.

all() : 반복 가능한 항목들이 모두 참일 때 참을 반환핟다.

 

any():  반복 가능한 항목들중 하나라도 참일 때 참을 반환핟다.

 

bool(): 값(리스트)을 부울 값으로 변환한다. 즉 리스트의 항목 유무를 True와 False로 알려준다.

 

split()

 

join()

 

 

 


 

제네레이터와 yeild문

  • 파이썬은 반복자 말고도 제네레이터generator라는 객체를 제공하는데 이 객체는 모든 값을 메모리에 올려두고 이용하는 것이 아니라 필요할 때마다 생성해서 반환하는 일을 한다.
  • 메모리를 효율적으로 활용할 수 있다는 장점이 있다.
# 제네레이터와 이를 이용한 for 문
my_generator = (x for x in range(1,4))
for n in my_generator:
    print(n)

# 반복자와 다른 점은 여기에서 생성된 1,2,3을 메모리에 만들어 두는 것이 아니라 for문에서 필요할 때 마다
# 반환해 주고 메모리에서 보관하지 않는다는 점이다.

 

 

 

 

 

 

 

 

Fibonacci Series

 

반응형