Python Basic16 제너레이터(generator) 제너레이터는 이터레이터를 생성해주는 함수입니다. 이터레이터는 클래스에 __iter__, __next__ 또는 __getitem__ 메서드를 구현해야 하지만 제너레이터는 함수 안에서 yield라는 키워드만 사용하면 끝입니다. 제너레이터는 발생자라고 부르기도 합니다. # yield 값 def number_generator(): yield 0 yield 1 yield 2 result = number_generator() for i in result: print(i) yield에서 함수 호출하기 def upper_generator(x): for i in x: yield i.upper() # 함수의 반환값을 바깥으로 전달 fruits = ['apple', 'pear', 'grape', 'pineapple', 'o.. 2022. 11. 23. 이터레이터(iterator) 이터레이터(iterator)는 값을 차례대로 꺼낼 수 있는 객체(object)입니다. 반복 가능한 객체(iterable)는 말 그대로 반복할 수 있는 객체인데 우리가 흔히 사용하는 문자열, 리스트, 딕셔너리, 세트가 반복 가능한 객체입니다. 즉, 요소가 여러 개 들어있고, 한 번에 하나씩 꺼낼 수 있는 객체입니다. dir 함수를 사용하여 __iter__ 메서드가 들어있으면 iterable객체이다. L=[1,2,3] it = L.__iter__() # == iter(L) for i in range(len(L)): result = it.__next__() # == next(it) print(result) 이더레이터 만들기 __init__ 메서드와 __getitem__ 메서드만 있는데도 동작이 잘 됩니다. _.. 2022. 11. 23. Exception 구문 1 try: 실행할 코드 except 예외이름: 예외가 발생했을 때 처리하는 코드 구문 2 : as 이용 try: 실행할 코드 except 예외 as 변수: 예외가 발생했을 때 처리하는 코드 구문 3 try: 실행할 코드 except: 예외가 발생했을 때 처리하는 코드 else: 예외가 발생하지 않았을 때 실행할 코드 finally: 예외 발생 여부와 상관없이 항상 실행할 코드 구문 4 : raise raise 예외명('에러메시지') 구문 5 : re - raise # re-raise def three_multiple(): try: x = int(input('3의 배수를 입력하세요: ')) if x % 3 != 0: # x가 3의 배수가 아니면 raise Exception('3의 배수가 아닙니다.'.. 2022. 11. 23. decorator 사용법 https://dojang.io/mod/page/view.php?id=2427 파이썬 코딩 도장: 42.1 데코레이터 만들기 Unit 42. 데코레이터 사용하기 파이썬은 데코레이터(decorator)라는 기능을 제공합니다. 데코레이터는 장식하다, 꾸미다라는 뜻의 decorate에 er(or)을 붙인 말인데 장식하는 도구 정도로 설명할 수 있습 dojang.io 클로저 사용법 : https://fiasco-at-python.tistory.com/46 0. 데커레이터 도입 개념 # 함수 출력 결과 확인 def hello(): print('hello 함수 시작') print('hello') print('hello 함수 끝') def world(): print('world 함수 시작') print('world'.. 2022. 11. 23. 이전 1 2 3 4 다음