return True는 언제 필요한가? — 파이썬 로그인 함수 예제로 알아보기print("로그인 성공")과 return True의 차이를 헷갈린 적 있지?
이번 글에서는 return True가 왜, 언제 필요한지
📌 실제 로그인 예제 코드를 통해 명확하게 설명해볼게!
class Member:
def __init__(self, id, pw):
self.id = id
self.pw = pw
def login(self, input_id, input_pw):
if self.id == input_id and self.pw == input_pw:
print("로그인을 성공하셨습니다.")
return
raise Exception("로그인에 실패했습니다.")
return True가 필요 없어요!print()만 하고 끝Exception 발생✔️ 성공은 조용히 통과하고,
❌ 실패만 예외 처리하는 구조이기 때문에return True없어도 돼요.
return True가 필요한 상황은?✅ 로그인 성공 여부를 조건문으로 직접 확인하고 싶을 때!
class Member:
def __init__(self, id, pw):
self.id = id
self.pw = pw
def login(self, input_id, input_pw):
if self.id == input_id and self.pw == input_pw:
return True
return False
member = Member("moon", "right")
if member.login("moon", "right"):
print("✅ 메인화면으로 이동합니다.")
else:
print("❌ 로그인 실패. 다시 시도해주세요.")
return True덕분에if문으로 성공 여부를 쉽게 체크할 수 있어요!
return True를 써야 할까?| 상황 | return True 필요? | 이유 |
|---|---|---|
| 단순 출력 + 예외 처리 | ❌ | 성공 여부 확인할 일이 없기 때문 |
| 조건문에서 성공 여부 확인 | ✅ | if나 while에서 사용 가능해야 함 |
return True는 함수 실행 성공 여부를 조건문으로 제어할 때 꼭 필요하다.
단순 실행 + 예외 처리만 하는 함수에서는 생략해도 OK!
return print(...)는 피하자!None이라 혼란만 생겨요필요하면 아래처럼 작성해도 돼요:
def login(...):
if 조건:
print("로그인 성공")
return True
print("로그인 실패")
return False