반응형 Python3 Python Decorator python에서는 함수를 인자로 주고 받을 수 있다. 따라서 인자로 받은 함수에 기능을 추가하거나 수정하여 새로운 함수를 만드는 것도 가능하다. def announce(f): # announce는 함수 f를 입력받아서 wrapper를 반환한다. def wrapper(): # wrapper는 함수 f의 실행 전후에 메시지를 출력한다. print(f"{f.__name__} will be operated soon...") # __name__은 함수의 이름을 나타낸다 f() print(f"{f.__name__} terminated") return wrapper 이제 hello()를 작성하여 announce 함수에 넣어준 뒤 반환된 wrapper를 new_hello로 저장한다. new_hello()를 실행하면 h.. 2021. 5. 24. Python 함수를 간략히 나타내는 lambda 형식 python에서는 매개변수로 함수를 주고 받을 수 있다. 이 때 인자로 주고받을 함수를 별도로 작성하지 않고 과 같은 한 문장으로 간략히 표현할 수 있는데, 이를 lambda 형식이라고 한다. java의 무명클래스와 유사한 개념이다. 이하에서 함수를 인자로 받는 기본 라이브러리의 함수 몇 가지를 통해 lambda의 사용법을 살펴본다. 1. list.sort() 다음과 같은 dictionary의 리스트를 정렬하고자 한다. p = [ {"name": "Choi", "club":"Seoul"}, # p[0] {"name": "Akinfeev", "club": "Moscow"}, # p[1] {"name": "Bale", "club":"Madrid"} # p[2] ] p.sort()를 그대로 실행할 경우 ' 2021. 5. 23. Python 함수, 예외처리, 클래스 1. 함수 기본 라이브러리에서 제공하는 print() input() 등은 모두 함수이다. 함수 또는 메소드는 일정한 동작을 수행하는 단위를 말한다. def를 이용해 직접 함수를 정의하여 사용할 수 있다. 하나의 파일 내에서 함수를 정의하고 사용할 수도 있지만, 별개의 파일로 작성할 경우에는 import 해주어야 한다. cal.py def divide(x,y): # 나누기 함수 return x/y; main.py 1) 함수만 가져오는 경우 from cal import divide # cal.py 파일로부터 divide()를 가져온다 print(divide(4,2)) # 4/2를 출력한다. 2) 파일 전체를 포함시키는 경우 import cal # cal.py를 가져온다. print(cal.divide(4,2.. 2021. 5. 22. 이전 1 다음 반응형