python
-
Python | Python 데코레이터(Decorator)python 2022. 1. 26. 18:02
파이썬의 데코레이터에 대해서 정리합니다. 파이썬의 웹 프레임워크나 라이브러리들을 사용할 때 @로 시작하는 것을 확인할 수 있습니다. 이를 파이썬에서는 데코레이터라고 합니다. 데코레이터(Decorator)는 기존 함수의 변경 없이 추가적인 기능을 덧붙일 수 있도록 해 주는 함수라고 보시면 됩니다. 간단하게 메서드의 시간을 측정하는 기능을 하는 데코레이터를 만들어 보면서 데코레이터가 어떤 것인지 정리해보도록 하겠습니다. 데코레이터는 함수와 클래스 둘 다 이용하여 만들 수 있습니다. 데코레이터(함수) from time import sleep, perf_counter def time_check_func(func): def check(*args): start = perf_counter() func(*args) #..
-
Python | Python 일급 함수(First Class function)python 2022. 1. 26. 14:11
파이썬의 일급 함수에 대해서 정리해 보려고 합니다. 특정 프로그래밍 언어에서 함수가 일급이라는 것은 다음의 조건을 만족하는 경우 일급 함수라고 합니다. 함수가 object 유형의 인스턴스인 경우. 함수를 변수에 저장할 수 있는 경우. 함수를 다른 함수에 매개변수로 전달할 수 있는 경우. 함수에서 다른 함수를 반환할 수 있는 경우. list, dict 등과 같은 데이터 구조에 저장할 수 있는 경우. 각각을 예시를 통해 확인해 보도록 하겠습니다. 함수가 object 유형의 인스턴스인 경우. 먼저 간단한 예시로 변수에 1을 할당해 보겠습니다. num = 1 # 변수에 1을 할당 print(type(num)) # print(issubclass(int, object)) # True 후 타입을 확인해보면 int라는..
-
Python | Python 내부 동작과정python 2022. 1. 24. 13:22
내부적으로 파이썬 코드를 실행했을 때 어떻게 동작하는지 정리해보려고 합니다. Python Interperter 파이썬은 인터프리터 언어라고 합니다. 파이썬 코드를 작성할 때 인터프리터는 프로그램을 읽고 그 안의 명령을 실행하는 역할을 합니다. 인터프리터의 실행 과정을 정리해보면 다음과 같습니다. 파이썬 코드를 작성합니다. 컴파일러는 소스 코드를 받습니다. 컴파일러는 소스 코드에서 각 줄의 구문을 확인합니다. 컴파일러에 오류가 발생하면 오류 메시지(Syntax error)와 함께 중지됩니다. 구문 확인 후 소스 코드를 바이트코드로 변환합니다. 바이트코드는 PVM(Python Virtual Machine)으로 전송됩니다. 입력 및 라이브러리 모듈과 함께 바이트 코드가 PVM에 대한 입력으로 제공됩니다. PV..
-
Python | Class에 대해서python 2022. 1. 23. 21:54
파이썬을 다시 공부하게 되면서 Class부터 정리를 해보려고 합니다. Class # 강아지를 생성하는 클래스입니다. class Dog: def __init__(self, kind, name, age): self._kind = kind self._name = name self._age = age 간단한 예시로 클래스는 위와 같이 생성할 수 있습니다. 각각을 좀 더 정리를 해보도록 하겠습니다. __init__ __init__ 메서드는 인스턴스가 생성될 때 실행되는 메서드로 Instance 변수를 지정합니다. (Java의 생성자 정도로 생각하시면 됩니다.) Instance 변수 Instance 변수는 간단히 Instance에 대한 속성 값이라고 생각하면 됩니다. def __init__(self, kind, n..