[8단계] 로그인처럼 생각하라 – 다중 조건 검증 구조 익히기
📌 학습 목표
비교 연산자와 논리 연산자를 조합하여, 실전 수준의 다중 조건 검증 로직을 구현합니다.
| < 8단계 다중 조건 검증 구조 > |
1. 도입 – “ID도 맞고, 비밀번호도 맞아야지”
우리가 매일 보는 로그인 화면을 생각해봅시다.
“아이디가 맞아도 비밀번호가 틀리면 로그인 안 돼요.”
→ 이건 결국 이런 구조입니다:
if 아이디 == 정답 and 비밀번호 == 정답:
로그인 성공
else:
로그인 실패
실무에선 이처럼 두 가지 이상의 조건이 동시에 만족되어야 실행되는 로직이 무수히 많습니다.
2. 비교 연산자 + 논리 연산자 조합하기
복습 차원에서 다시 정리해봅니다.
| 연산자 | 의미 | 예시 |
|---|---|---|
== |
같다 | a == b |
!= |
같지 않다 | a != b |
>, < |
크다 / 작다 | a > b, a < b |
and |
모두 참 | a == b and c == d |
or |
하나만 참 | a > b or x < y |
3. 실전 예제 – 로그인 검증 시스템
user_id = input("아이디를 입력하세요: ")
password = input("비밀번호를 입력하세요: ")
if user_id == "admin" and password == "1234":
print("✅ 로그인 성공!")
else:
print("❌ 로그인 실패. 아이디 또는 비밀번호를 확인하세요.")
4. 실무 활용 예시 – 접근 제한 시스템
age = int(input("나이를 입력하세요: "))
is_member = input("회원가입 했나요? (yes/no): ") == "yes"
if age >= 18 and is_member:
print("접근 허용: 성인 회원")
else:
print("접근 불가: 성인이 아니거나 비회원입니다.")
5. 실무 팁 – 조합 로직을 안전하게 다루는 법
input()값 비교 시 오타 방지를 위해.lower()활용- 조건이 길어질 경우 괄호로 명확히 감싸기
answer = input("동의하시겠습니까? (yes/no): ").lower()
if answer == "yes":
print("동의 완료")
6. 실전 미션 – 도서관 입장 조건 만들기
조건:
- 나이가 14세 이상
- 학생이거나 회원이면 입장 가능
age = int(input("나이를 입력하세요: "))
is_student = input("학생인가요? (yes/no): ") == "yes"
is_member = input("도서관 회원인가요? (yes/no): ") == "yes"
if age >= 14 and (is_student or is_member):
print("📚 입장 가능합니다.")
else:
print("🚫 입장 불가 – 나이 또는 조건 미달")
7. 다음 단계 예고
9단계에서는 조건문 중첩 구조를 배우고,
로그인 → 권한 체크 → 메뉴 분기처럼 단계별 조건 분기를 연습합니다.