June is Combung

파일 컨트롤러[2단계] : ATM 본문

python/파일

파일 컨트롤러[2단계] : ATM

june__Park 2021. 3. 1. 01:19
# 파일 컨트롤러[2단계] : ATM
import os

size = 5
log = -1

accs = ["" for i in range(size)]
pws = ["" for i in range(size)]
moneys = [0 for i in range(size)]

file_name = "atm.txt"

while True:
    data = ""
    print("[MEGA ATM]")
    print("[1]회원가입")
    print("[2]회원탈퇴")
    print("[3]로그인")
    print("[4]로그아웃")
    print("[5]입금")
    print("[6]출금")
    print("[7]이체")
    print("[8]잔액조회")
    print("[9]저장")
    print("[10]로드")
    print("[0]종료")

    sel = int(input("메뉴 선택 : "))

    if sel == 1:
        if log != -1:
            print("로그아웃을 먼저 해주세요")
            continue
        my_id = input("사용할 아이디를 입력하세요: ")
        idx = -1
        for i in range(size):
            if accs[i] == my_id:
                idx = -1
                break
            if accs[i] == "":
                idx = i
                accs[idx] = my_id
                break
        if idx == -1:
            print("중복입니다.")
            continue     
        my_pw = input("사용할 비밀번호를 입력하세요: ")
        pws[idx] = my_pw
        print("회원가입 완료. %s님, 환영합니다."%(accs[idx]))
            
    elif sel == 2:
        if log == -1:
            print("로그인 후 이용해주세요")
            continue
        h = int(input("회원탈퇴를 진행하시겠습니까? (맞으면 0, 아니면 1): "))
        if h == 1:
            continue
        accs[log] = ""
        pws[log] = ""
        print("회원탈퇴 완료.")
        log == -1
        
    elif sel == 3:
        if log != -1:
            print("이미 로그인 되어있습니다.")
            continue
        my_id = input("아이디를 입력하세요: ")
        my_pw = input("비밀번호를 입력하세요: ")
        cnt = 0
        for i in range(size):
            if my_id == accs[i] and my_pw == pws[i]:
                print("%s님, 로그인되었습니다."%(accs[i]))
                log = i
                cnt = 1
                break
        if cnt == 0:
            print("아이디 혹은 비밀번호 오류입니다.")
            
    elif sel == 4:
        if log == -1:
            print("이미 로그아웃 되어있습니다.")
            continue
        log = -1
        print("로그아웃 되었습니다.")
    elif sel == 5:
        if log == -1:
            print("로그인 후 이용해주세요")
            continue
        im = int(input("입금하실 금액을 입력해주세요: "))
        moneys[log] += im
        print("입금 완료. 현재 잔액은 %d원 입니다."%(moneys[log]))
    elif sel == 6:
        if log == -1:
            print("로그인 후 이용해주세요")
            continue
        om = int(input("출금하실 금액을 입력해주세요: "))
        if moneys[log] < om:
            print("잔액이 부족합니다.")
        else:
            moneys[log] -= om
            print("출금 완료. 현재 잔액은 %d원 입니다."%(moneys[log]))
    elif sel == 7:
        if log == -1:
            print("로그인 후 이용해주세요")
            continue
        ac = input("이체하실 계좌번호를 입력해주세요")
        idx = -1
        cnt = 0
        for i in range(size):
            if accs[i] == ac:
                idx = i
                cnt = 1
                break
        if cnt == 0:
            print("존재하지 않는 계좌입니다.")
            continue
        
        om = int(input("이체하실 금액을 입력해주세요: "))
        if moneys[log] < om:
            print("잔액이 부족합니다.")
        else:
            moneys[log] -= om
            moneys[idx] += om
            print("이체 완료. 현재 잔액은 %d원 입니다."%(moneys[log]))
    elif sel == 8:
        if log == -1:
            print("로그인 후 이용해주세요")
            continue
        print("현재 잔액은 %d원 입니다."%(moneys[log]))
    elif sel == 9:
        f = open(file_name,"wt")
        for i in range(size):
            data += (accs[i] + "/" + pws[i] + "/" + str(moneys[i]) + "\n")
        f.write(data)
        f.close()
        print("파일 저장 완료")
    elif sel == 10:
        if os.path.exists(file_name):
            f = open(file_name,"rt")
            data = f.read()
            f.close()

            temp = data.split("\n")
            for i in range(size):
                temp2 = temp[i].split("/")
                accs[i] = temp2[0]
                pws[i] = temp2[1]
                moneys[i] = int(temp2[2])

            print(accs)
            print(pws)
            print(moneys)
            print("파일 로드 완료")
        else:
            print("파일을 불러올 수 없습니다.")
    elif sel == 0:
        print("프로그램 종료")
        break

'python > 파일' 카테고리의 다른 글

게시판  (0) 2021.03.01
파일 컨트롤러[3단계] : 장바구니  (0) 2021.03.01
파일 컨트롤러[1단계] : 리스트  (0) 2021.03.01
파일 읽기 : 연습문제  (0) 2021.03.01
파일 쓰기 : 연습문제2  (0) 2021.03.01
Comments