본문 바로가기
Edu/01. Language: Python

소스코드재사용: 함수, 클래스, 모듈, 패키지

by Lacuna028 2021. 5. 30.

* 학습 내용

- 함수

- 클래스

- 모듈

- 패키지

 

0. Intro

함수, 클래스, 모듈, 패키지를 사용하는 이유는 소스 코드를 작성하다보면 동일한 소스코드를 반복해서 적게 되는 경우가 있다. 이런 불필요한 노동을 줄이기 위해 함수, 클래스, 모듈, 패키지를 이용하여 코드 재사용성을 높이면 효율적인 코드 작성이 가능하다.

 

1. 함수(def)

동작을 정의한 소스코드

def 함수이름():
    재사용할 소스 코드 블럭
def 함수이름(인수):
    재사용할 소스 코드 블럭

cf) 우리가 정의한 함수 안에서 쓸 수 있는 인수를 매개변수(parameter)라고 부름

def 함수이름(인수):
    재사용할 소스 코드 블럭
    return 반환값

 

 

2. 클래스(class)

class 클래스이름():
    재사용할 소스 코드 블럭(속성, 메소드 포함)

함수는 동작을 정의한 소스코드이며 데이터를 저장하는 용도로 사용할 수 없다.

하지만 프로그래밍을 하다보면 함수와 함께 데이터를 저장하는 경우가 발생한다.

이럴 때 사용하는 것이 바로 클래스(class)다.

즉 클래스는 여러 개의 변수와 함수들을 모아서 재사용 할 수 있는 기능을 제공하는 개념이다.

 

이 클래스를 사용하여 실제로 저장하는 데이터를 지니고 있는 객체(object)가 생성된다.

클래스는 객체를 생성하기 위하여 변수와 함수를 모은 설계도(붕어빵틀)이며,

이 설계도에 의해 유일한 식별자를 가진 객체(붕어빵)들이 생성되고 사용된다.

객체인스턴스(instance)라고도 불린다.

 

클래스 안에는 변수와 함수가 포함되어 있다.

클래스 안의 변수속성(attribute)라고 부르고

클래스 안의 함수매소드(method)라고 부른다.

 

 

3. 모듈

파이썬으로 정의한 소스 코드를 담고 있는 파일.

.py 로 끝나는 확장자를 가지고 있으며 파일 이름이 곧 모듈 이름이다.

모듈을 불러올 때는 import 모듈명으로 탑재시킨다.

import 모듈명

 

 

4. 패키지

모듈을 폴더로 모은 것을 패키지라 한다.

즉 패키지 폴더 안에는 여러개의 모듈 파일이 존재하며,

각각의 모듈파일에는 여러개의 클래스가 있고,

그 클래스 안에는 여러개의 변수와 함수가 존재한다.

import 패키지명.모듈명
from 패키지명.모듈명 import 클래스명

import한 모듈이 파이썬 실행 도중 변경이 되었을 때 아래와 같이 입력한 후 모듈 이름을 대입해서 호출하면 된다.

import imp
imp.reload(module_name)

 

 

 

 

 

'Edu > 01. Language: Python' 카테고리의 다른 글

논리합(or), 논리곱(and)  (0) 2021.08.25
map()함수: iteral 자료형 형변환  (0) 2021.08.23
세트/딕셔너리  (0) 2021.05.30
튜플vs리스트  (0) 2021.05.28
반복문  (0) 2021.05.28