나만의 python 제작기

두번째(함수를 응용한 회원가입,로그인)

in_str = input("회원가입하시겠습니까 아니면 로그인하시겠습니까?(회원가입/로그인)")
def account_id(_ai):
    for member in id:
        if member == _ai:
            print("아이디가 이미 존재합니다")
            new_id2 = input("다시입력해주세요")
            while new_id2==member:
                print("아이디가 이미 존재합니다")
                new_id2 = input("다시입력해주세요")          
    id.append(_ai)
    new_pw = input("비밀번호를 눌러주세요")
    pw.append(new_pw)
    print("회원가입 완료")
    return 3
def login(_lg):
    i=0
    for mem in id:
        if mem == _lg:
            a.append(i)
        i=i+1
    while len(a) == 0:
        print("아이디가 존재하지 않습니다.")
        whatid = input("아이디를 다시 입력해주세요")
        i=0
        for mem in id:
            if mem==whatid:
                a.append(i)
            i=i+1
    whatpw = input("비밀번호를 입력해주세요")
    while whatpw != pw[a[0]]:
        print("비밀번호가 일치하지 않습니다.")
        whatpw = input("비밀번호를 다시입력해주세요")
    return False
def what_jesture(_wj):
    if _wj != '회원가입' and _wj != '로그인':
        in_st = input("로그인 또는 회원가입을 입력해주세요")
        what_jesture(in_st)
    if _wj=='회원가입':
        new_id = input("아이디를 입력해주세요")
        if account_id(new_id)==3:
            return True
    if _wj=='로그인':
        whatid = input("아이디를 입력해주세요")
        login(whatid)
a=[] #입력아이디의 id에서 위치(=id[a]) 파악
     #id[1]의  pw는 pw[1]이라는 것을 이용
     #그래서 pw[a]와 입력한 비번이 같으면 로그인 성공
id=['haechan1103']   #회원가입하면 저장될 아이디 리스트
pw=['khc031103']   #회원가입하면 저장될 비번 리스트
while what_jesture(in_str):
    in_str = input("회원가입하시겠습니까 아니면 로그인하시겠습니까?(회원가입/로그인)")
    pass
print("로그인 하셨습니다")

 

함수를 이용하면서 물론 함수라는 것이 여러번 반복하는 경우에 간편해지는 거지만 이것은 반복하는 것이 적으므로 더 길어지게 되었다. 그러나 이것을 이용하면서 첫번째에서는 회원가입을 치면 회원가입이 되고 로그인은 아무거나 치면 로그인이 됬는데 지금은 로그인도 로그인을 쳐와 로그인이 가능하게 만들었다. 좀 더 간단하게 만들 수 있으면 알려주시면 감사하겠습니다. 그리고 이것을 보고 떠오르는 아이디어가 있으면 같이 공유하면 좋겠네요. 감사합니다. 

 

댓글

댓글 본문
graphittie 자세히 보기