Hi Hi

'파이썬 모듈화'에 해당되는 글 1건

  1. 파이썬(python) - 모듈화

파이썬(python) - 모듈화

 

모듈이란 ? 컴퓨터가 실행할 수 있는 코드를 갖고 있는 일종의 파일입니다.
모듈화된 코드가 중요한 이유는 모듈이 어려 프로그램 간에 공유될 수 있기 때문입니다.



파일에 저장하는 코드를 분리해서 이 코드를 transactions.py 라고 하는 모듈에 저장하면, 이 모듈은 두 프로그램 모두에서 공유할 수 있을 것입니다.
그래서 transactions.py의 코드를 수정하면 두 프로그램 모두에 이 변경 사항이 자동으로 반영될 것입니다.


그러면 모듈은 어떻게 생성하나요 ? 
 
모듈은 단지 어떤 파이썬 코드를 갖고 있는 파일일 뿐입니다. 그로므로 공유하려는 코드만 가져오면 됩니다. !!

def save_transaction(prince, credit_card, description):
    file = open("transcations.txt" , "a")


만든 모듈을 어떻게 사용하나요 ?
일단 모듈을 만들고 난 후에는 프로그램에게 그 모둘을 사용할 것이라고 알려줘야 합니다.
라이브러리를 임포트 하듯이 모듈도 임포트해야 쓸 수 있습니다.
파이썬은 표준 라이브러리 대신에 직접 만든 라이브러리를 사용하게 됩니다.


from transactions import* //'모듈 안의 모든 코드를 우리 프로그램 안에 있는 것처럼 취급한다'는 뜻입니다.




def save_transaction(price, credit_card, description):
    file = open("transactions.txt", "a")
    file.write("%16s%07d%16s\n" %(credit_card,price*100,description))
    file.close


from transactions import* 

items = ["a","b","c","d"]
prices = [1,2,3,4,5]
running=True
while runing:
    option = 1
    for choice in items:
        print(str(option) + ","+ choice)
        option = option + 1
    print(str(option) + ", Quit")
    choice = int(input("choose an option:"))
    if choice == option:
        runing = false
    else:
        credit_card = input("")
        new_price = promotion.discount(prices[choice-1])
        if input("?")=="Y":
            new_price = starbuzz.discount(new_price)
           
        save_transaction(new_price,credit_card, items[choice-1])


transaction.py 모듈에 들어갈 코드를 아래와 같이 작성합니다.
def save_transaction(price, credit_card, description):
file = open("transactions.txt", "a")
file.write("%16s%07d%16s\n" %(credit_card,price*100,description))
file.close