1) 학습 요약표
개념 | 설명 |
조건문 | 조건에 따라 실행 코드 분기 (if/elif/else) |
반복문 | while, for로 반복 처리 |
반복 제어 | break, continue로 반복 흐름 제어 |
논리 연산자 | and, or, not 으로 복합 조건 표현 |
멤버십 연산자 | in, not in 으로 포함 여부 확인 |
2) 이론 학습
1. 조건문 if / elif / else
조건문은 주어진 조건이 맞는지(참인지) 검사하고, 그에 따라 서로 다른 코드를 실행할 수 있게 합니다. 여러 경우 중 하나를 선택할 때 사용합니다.
score = int(input("점수를 입력하세요: "))
if score >= 90:
print("A 학점")
elif score >= 80:
print("B 학점")
elif score >= 70:
print("C 학점")
elif score >= 60:
print("D 학점")
else:
print("F 학점")
- if 조건부터 차례로 확인하며 해당하는 조건이 있으면 그 코드만 실행하고 나머지는 건너뜁니다.
- 숫자 비교에는 >=, <=, ==, != 등의 비교 연산자를 사용합니다.
2. 조건 판별 응용
파이썬에서는 다음과 같은 값은 자동으로 거짓(False)으로 취급됩니다: None, 0, "", [], {}
value = None
if value:
print("참입니다")
else:
print("거짓입니다")
if []:
print("리스트가 있음")
else:
print("빈 리스트입니다")
- if문에서 값이 비어 있거나 없으면 자동으로 False로 간주됩니다.
3. while 반복문
while문은 조건이 참인 동안 계속 반복됩니다. 조건이 거짓이 되면 반복이 끝납니다.
count = 0
while count < 5:
print("반복 중:", count)
count += 1
- count += 1은 count = count + 1과 같습니다.
- 조건이 항상 참이면 무한 루프가 되므로 반드시 탈출 조건을 만들어야 합니다.
4. for 반복문 + 조건문 조합
for문은 리스트, 문자열, range 등 반복 가능한 객체의 항목을 하나씩 꺼내 반복합니다.
names = ["철수", "영희", "민수"]
for name in names:
if name == "영희":
print(f"{name}는 출석했습니다.")
else:
print(f"{name}는 결석했습니다.")
- 리스트 내 이름을 하나씩 꺼내 조건에 따라 출력합니다.
5. 논리 연산자 and / or / not
- and: 두 조건이 모두 참이면 참
- or: 둘 중 하나라도 참이면 참
- not: 참/거짓을 반대로 바꿈
id_input = input("ID 입력: ")
pw_input = input("비밀번호 입력: ")
if id_input == "admin" and pw_input == "1234":
print("접속 성공")
else:
print("접속 실패")
- 두 조건이 모두 맞아야 접속 성공
6. in / not in
특정 요소가 리스트, 문자열, 튜플에 포함되어 있는지를 검사할 수 있습니다.
keywords = ["ping", "traceroute", "show"]
cmd = input("명령어 입력: ")
if cmd in keywords:
print("지원하는 명령어입니다.")
else:
print("알 수 없는 명령어입니다.")
- in은 포함 여부 확인, not in은 포함되지 않았는지 확인
7. break / continue
- break: 반복문을 즉시 종료합니다.
- continue: 해당 반복을 건너뛰고 다음 반복으로 이동합니다.
# break 예시
while True:
data = input("데이터 입력(q 입력시 종료): ")
if data == "q":
break
print("입력된 데이터:", data)
# continue 예시
for i in range(1, 11):
if i % 2 == 0:
continue
print("홀수:", i)
3) 종합 실습 과제
[실습1] 점수를 입력받아 학점을 판별하는 프로그램 작성
- 사용자에게 0부터 100 사이의 점수를 입력받습니다.
- 점수 구간에 따라 아래 기준으로 학점을 출력합니다.
- 90점 이상: A 학점
- 80점 이상: B 학점
- 70점 이상: C 학점
- 60점 이상: D 학점
- 60점 미만: F 학점
- 조건문 if ~ elif ~ else를 활용합니다.
[실습2] 로그인 시스템 만들기
- ID와 비밀번호를 입력받습니다.
- ID가 'admin'이고 비밀번호가 'cisco123'일 경우 "접속 성공"을 출력합니다.
- 둘 중 하나라도 다르면 "접속 실패"를 출력합니다.
- and 논리 연산자를 사용하여 조건을 구성합니다.
[실습3] 명령어 유효성 검사기
- 허용된 명령어 리스트를 ['show', 'ping', 'exit']로 정의합니다.
- 사용자로부터 명령어를 입력받습니다.
- 입력된 명령어가 리스트에 존재하면 "지원하는 명령어입니다." 출력, 존재하지 않으면 "알 수 없는 명령어입니다." 출력합니다.
- in 연산자를 사용하여 멤버십 검사를 수행합니다.
[실습4] 1~20까지 수 중 홀수만 출력
- for 반복문과 range()를 사용하여 1부터 20까지 숫자를 생성합니다.
- 숫자가 짝수인 경우 continue를 사용하여 출력하지 않습니다.
- 결과적으로 홀수만 공백으로 구분하여 출력되도록 작성합니다.
[실습5] 반복 입력받아 짝수만 저장하는 필터 프로그램
- while 반복문을 사용하여 사용자가 숫자를 계속 입력할 수 있게 합니다.
- 사용자가 -1을 입력하면 입력을 종료합니다.
- 입력된 수가 홀수일 경우 continue를 사용하여 건너뜁니다.
- 짝수일 경우 리스트에 저장하고, 반복이 끝난 후 저장된 짝수 목록을 출력합니다.
'파이썬 > 기초 학습' 카테고리의 다른 글
Day 8: 파일 입출력 (File I/O) 추가학습 (1) | 2025.08.03 |
---|---|
Day 7: 함수 추가학습 (2) | 2025.08.02 |
Day 5: 반복문(while,for) 추가 학습 (3) | 2025.07.30 |
Day 4: List,Dictionary,Set,Tuple 추가 학습 (2) | 2025.07.26 |
Day 3: 함수 정의 & 파일 처리 학습 (3) | 2025.07.24 |