본문 바로가기
개발자, 탐구생활/개발자, 코딩

[python]파이썬 기초1 - 파이썬 모듈 알아보기

by The Career 2021. 7. 17.
반응형

회사에서 php로 된 프로그램을 Python으로 마이그레이션을 할 기회가 생겼습니다.

처리해야할 데이터가 점차 많아지면서 php로는 처리속도가 늦어, 데이터 처리에 Python이 빠르다는 장점이 있어서 마이그레이션을 진행하기로 했습니다.

 

1. Python 이란? 

Python은 1990년에 귀도 반 로섬(네덜란드어: Guido van Rossum, 1956년 1월 31일 ~) 이라는 개발자에 의해 탄생한 언어로, 인터프리터 형식을 가지고 있는 언어입니다. 

 

Python의 특징은 다음과 같습니다.

- 스크립트 언어 : Python은 해석기인 인터프리터가 소스코드를 한 줄씩 해석하여 실행하는 방식입니다.

 

- 동적 타이핑 : Python은 변수 선언시 자료형을 명시하지 않습니다. 실제로 사용해본 결과, Python은 자료형의 예민(?) 한 듯하여 변수를 사용할 때, 자료형을 주의하지 않으면 에러가 자주 발생합니다.

 

- 독립적 플랫폼 : Python은 운영체제마다 컴파일 할 필요가 없기 때문에, 한 번 코드를 작성해두면 운영체제에 상관없이 모두 실행할 수 있습니다.

 

Python은 다양한 라이브러리를 지원하고 있기 때문에, 타 언어 대비 생산성이 높은 특징이 있습니다.

 

2. Python 모듈이란? 

Python에서 모듈이란, 변수, 함수, 클래스 등을 모아놓은 파일입니다. Python으로 코딩시 다른 사람이 만들어둔 모듈을 사용하거나 공통적으로 사용되는 변수, 함수 등을 모아 사용할 때 편리합니다.

 

모듈을 사용하는 방법은 import 키워드를 사용합니다.

 

import module_name

 

예시로 random 모듈 사용 방법을 알아보겠습니다.

 

import random
#random module load

print(random.randrange(0, 10))
#get random number between 0 and 10

 

random이라는 모듈을 가져와 모듈이 가지고 있는 randrange라는 함수를 호출한 예제입니다.

파라메터로 두 숫자를 받아, 숫자 사이의 임의의 숫자를 리턴합니다.

 

원하는 모듈을 직접 만드는 것도 가능합니다. 주로 공통적으로 많이 사용되는 변수, 함수 등은 공통 모듈로 작성해두면 코드의 길이도 줄일 수 있고, 생산성도 높일 수 있습니다.

 

모듈로 사용할 module.py와 모듈을 import해서 사용할 main.py를 만들어서 확인해보겠습니다.

#module.py

#두 수를 입력받아 더한 값을 출력하는 함수
def add(number1, number2):
    result = number1 + number2
    return result

# main.py

#직접 만든 module.py import
import module

#module의 add 함수 사용
print(module.add(1, 5))

위 코드를 실행하면 6 이라는 결과를 확인할 수 있습니다.

 

모듈에는 여러개의 함수와 변수도 함께 사용할 수 있습니다.

이해를 돕기 위해 "지갑" 이라는 모듈을 사용하는 예제를 살펴보겠습니다.

 

#wallet.py
balance = 0

#수입
def income(money):
    global balance
    balance += money

#현재 잔액 확인
def getBalance():
    global balance
    print("현재 남은 잔액은 " + str(balance) + "입니다.")

#지출
def spend(money):
    global balance
    balance -= money


#use_wallet.py
import wallet

wallet.getBalance() # 잔액확인
wallet.income(10000) # 10000원 추가
wallet.getBalance() # 잔액 확인
wallet.spend(5000) # 5000원 사용
wallet.getBalance() # 잔액 확인

 

wallet 이라는 모듈에는 잔액이라는 변수와 수입, 지출, 잔액 확인 3가지 함수가 있고, 모듈을 사용하는 use_wallet에서 3가지 함수를 사용했습니다. global 키워드는 해당 함수를 전역 변수로 사용하겠다는 키워드입니다.

 

프로그램 실행 결과

 

오늘은 Python의 모듈에 대해서 간단하게 알아보았습니다.

 

위 예제는 아래 git hub에서 확인할 수 있습니다.

 

SEUNGJOOMOON/Python_basic

python basic examples. Contribute to SEUNGJOOMOON/Python_basic development by creating an account on GitHub.

github.com

 

* 참고 사이트

 

파이썬(Python) 바로 알기 – 특징, 장점, 활용 사례(https://library.gabia.com/contents/9256/)

 

 

※ 이 글은 주니어 개발자의 삽질과 공부한 결과를 저장한 문서입니다.

 

잘못된 내용이 있을 수 있으니 단순한 참고만 부탁드리며, 댓글로 정확한 내용을 적어주시면 더 많은 분들에게 좋은 정보를 공유하는 좋은 기회가 될 것 입니다!

반응형