[SECTION 01. 파이썬 기초 문법 - 출력문, 주석, 자료형]
print): 프로그램이 처리한 결과를 화면에 보여주는 창구입니다.print("안녕하세요. 파이썬입니다!")#): 코드를 실행하지 않고 메모를 남길 때 사용합니다. 협업과 나중의 나를 위해 필수적입니다.name = "파이썬" # 유저의 이름
age = 30 # 유저의 나이
address = "대전" # 유저의 거주지기본 출력: print("내용")
여러 값 출력: print("A", "B") (쉼표로 구분하면 한 칸 띄워서 출력됩니다.)
f-string: print(f"결과값은 {변수}입니다.") 변수와 문자를 섞어 쓰기 가장 편한 방법입니다.
name = "파이썬"
print(f"{name}님! 만나서 반갑습니다!")
한 줄 주석: # 뒤에 내용을 작성합니다.
# 이 줄을 주석 처리합니다.
여러 줄 주석: """ 내용 """ 또는 ''' 내용 '''으로 감쌉니다.
"""
작성자: 파이썬
작성일자: 2026-03-02(월)
내용: 데이터 분석
"""
| 자료형 명칭 | 파이썬 타입 | 설명 | 예시 |
|---|---|---|---|
| 정수형 | int | 소수점이 없는 숫자 | 10, -5, 0 |
| 실수형 | float | 소수점이 있는 숫자 | 3.14, -0.5 |
| 문자열 | str | 따옴표(", ')로 감싼 텍스트 | "Hello", '25' |
| 불리언 | bool | 참 또는 거짓 (논리값) | True, False |
Shift + Enter로 실행해 보세요.# 1. 변수에 데이터 담기
name = "파이썬" # 문자열(str)
age = 25 # 정수형(int)
height = 175.5 # 실수형(float)
is_instructor = True # 불리언(bool)
# 2. 다양한 방식으로 출력하기
print("--- 기본 출력 ---")
print(name, age, height)
print("\n--- f-string 활용 ---")
print(f"{name}의 나이는 {age}세이고, 키는 {height}cm입니다.")
# 3. 데이터 타입 확인하기
print("\n--- 타입 확인 ---")
print(type(name))
print(type(age))
print(type(height))
[SECTION 02. 파이썬 기초 문법 - 연산(Operators)]
| 분류 | 종류 | 설명 |
|---|---|---|
| 산술 연산자 | +, -, *, /, //, %, ** | 숫자 계산 (더하기, 나누기, 몫, 나머지, 거듭제곱) |
| 비교 연산자 | ==, !=, >, <, >= | 값 비교 (결과는 항상 True 또는 False) |
| 논리 연산자 | and, or, not | 여러 조건을 결합 (그리고, 또는, 아니면) |
| 복합 대입 | +=, -=, *=, /= | 변수에 값을 계산해서 다시 저장 (예: a += 1) |
Shift + Enter로 결과를 확인하며 결과를 확인해 보세요.a = 7
b = 3
# 산술 연산
print(a + b) # 10
print(a // b) # 2
print(a ** b) # 343
# 비교 연산
print(a > b) # True
print(a == b) # False
# 논리 연산
print("조건1 and 조건2:", (a > 5) and (b < 5))
# and 연산은 연결 되어 있는 녀석들이 전부 True일 때만 True를 반환한다
print("조건1 or 조건2:", (a < 5) or (b < 5))
# or 연산은 연결 되어 있는 녀석들 중에 하나라도 True일 때 True를 반환한다
# 구매 정보
item_price = 45000 # 상품 가격
count = 3 # 구매 수량
discount_rate = 0.1 # 10% 할인
# 계산
total_before_discount = item_price * count
discount_amount = total_before_discount * discount_rate
final_price = total_before_discount - discount_amount
print(f"총 주문 금액: {total_before_discount}원")
print(f"할인 금액: {discount_amount}원")
print(f"최종 결제 금액: {final_price}원")
total_treats = 15
cat_count = 2
treats_per_cat = total_treats // cat_count # 한 마리당 가져가는 개수
leftover = total_treats % cat_count # 남는 개수
print(f"고양이 한 마리당 {treats_per_cat}개씩 먹고, {leftover}개가 남았습니다.")
score = 85
is_cheating = False
# 합격 조건: 80점 이상 '이면서' 부정행위를 하지 않았어야 함
is_pass = (score >= 80) and (not is_cheating)
print(f"이번 시험 합격 여부: {is_pass}")
Q1. 변수 number=17 이 있을 때, 이 숫자가 짝수면 True, 홀수면 False가 출력되도록 연산자를 사용해 보세요.
number = 17
is_even = number % 2 == 0
print(f"해당 숫자 {number} 짝수인지에 대한 결과: {is_even}")Q2. 키가 140cm 이상이거나, 부모님과 동반(has_parent = True)한 경우에만 탑승이 가능합니다. 아래 변수를 사용해 탑승 가능 여부(can_ride)를 출력해 보세요.
height = 135
has_parent = True
정답
height = 135 # 키
has_parent = True # 부모 동반 여부
can_ride = (height >= 140) or (has_parent == True)
print(f"놀이기구 탑승 가능 여부 : {can_ride}")
Q3. 현재 내 통장 잔고(balance)가 10,000원입니다. 여기에 용돈 5,000원이 들어왔고(+=), 간식비로 3,000원을 썼습니다(-=). 최종 잔고를 계산하여 출력하세요.
balance = 10000
balance += 5000 # 용돈이 5,000원 들어옴
balance -= 3000 # 간식비로 3,000원을 지출함
print(f"최종 잔고는 {balance}원입니다")[SECTION 03. 파이썬 기초 - 조건문, 반복문]
{ }) 대신 콜론(:)과 들여쓰기로 코드의 범위를 구분합니다.if 조건식:
# 조건이 참일 때 실행 (들여쓰기 필수)
elif 다른 조건식:
# 앞의 조건이 거짓이고, 이 조건이 참일 때 실행
else:
# 모든 조건이 거짓일 때 실행
리스트 순회: for 변수 in 리스트:
# 과일 리스트
fruits = ["사과", "포도", "귤", "오렌지"]
for fruit in fruits:
print(fruit)
횟수 반복: for i in range(시작, 끝, 증가값):
# 정수 1에서 100까지 출력
for i in range(1, 101):
print(i)
True인 동안 반복하고 False가 되면 반복을 멈춥니다.while 조건:i = 1
while i <= 5:
print(i, "번째 반복")
i += 1 # i를 1씩 증가시켜 조건식이 언젠가는 False가 되도록 만듦
print("while 반복문 종료")# hour = int(input("시각을 입력해 주세요"))
hour = 14
if hour < 12:
print("오전입니다. Java와 Bami에게 아침밥을 주세요.")
elif 12 <= hour < 18:
print("오후입니다. 고양이들과 사냥 놀이를 해주세요!")
else:
print("저녁입니다. 고양이들이 잠잘 준비를 합니다.")
username = input("아이디 입력: ")
password = input("비밀번호 입력: ")
if username == "admin" and password == "1234":
print("로그인 성공!")
print("관리자 권한으로 접속했습니다.")
else:
print("로그인 실패!")
print("아이디 또는 비밀번호가 잘못되었습니다.")
print("시스템 종료")
sum = 0 # 합계 계산용 변수
# range(시작, 끝, 간격)
for i in range(1, 101):
sum += i
print(f"합계: {sum}")
students = ["Java", "Bami", "Gemini", "Python"]
print("--- 오늘 수강생 명단 ---")
for name in students:
print(f"반갑습니다, {name}님!")
Q1. 변수 score = 85일 때, 아래 기준에 맞춰 등급을 출력하세요.
90점 이상: "A"
80점 이상 90점 미만: "B"
80점 미만: "C"
정답
score = 85
if score >= 90:
print("A학점")
elif score >= 80:
print("B학점")
else:
print("C학점")
Q2. for문과 range()를 사용하여 1부터 10까지의 숫자를 모두 더한 결과를 출력하세요.
total = 0 # 합산 변수
for i in range(1, 11): #
total += i
print(f"1부터 10까지 총 합 : {total}")[학생 관리 프로그램 만들기]
콘솔에서 명령어를 입력받아 학생 정보를 관리하는 프로그램을 만드세요.
학생은 이름(name), 나이(age), 점수(score) 정보를 가집니다.
students = [None, None, None]count 변수를 사용한다.프로그램은 무한 반복으로 아래 메뉴를 출력한다.
1. 학생 등록2. 학생 목록3. 학생 검색4. 학생 수정5. 학생 삭제0. 종료count가 3이면 "학생 수를 초과하였습니다." 출력 후 등록 불가students[count]에 저장count += 11번) 이름: 홍길동 / 나이: 20 / 점수: 80"존재하지 않는 학생입니다.""존재하지 않는 학생입니다."==== n번째 학생 수정이 완료되었습니다 ===="존재하지 않는 학생입니다."None으로 만들고 count -= 1"잘못된 명령어입니다." 출력names = []
ages = []
scores = []
count = 0
while True:
print("1. 학생 등록")
print("2. 학생 목록")
print("3. 학생 검색")
print("4. 학생 수정")
print("5. 학생 삭제")
print("0. 프로그램 종료")
cmd = int(input("명령어 입력:"))
if cmd == 1:
print("학생을 등록합니다.")
name = input("이름 입력:")
age = int(input("나이 입력:"))
score = int(input("점수 입력:"))
names.append(name) # 0
ages.append(age) # 0
scores.append(score) # 0
count += 1
elif cmd == 2:
if count == 0:
print("등록된 학생이 없습니다.")
continue
print("\n\n=== 학생 목록 ===")
for i in range(count):
print(f"번호 : {i + 1} / 이름: {names[i]}")
print()
elif cmd == 3:
if count == 0:
print("등록된 학생이 없습니다.")
continue
search_no = int(input("검색할 번호 입력:"))
search_idx = search_no - 1
if search_no < 0 or search_no > count:
print("존재하지 않는 학생입니다.")
else:
print(f"번호: {search_no} "
f"/ 이름 : {names[search_idx]} "
f"/ 나이 : {ages[search_idx]}살 "
f"/ 점수 : {scores[search_idx]}점")
elif cmd == 4:
if count == 0:
print("등록된 학생이 없습니다.")
continue
modify_no = int(input("수정할 번호 입력:"))
modify_idx = modify_no - 1
if modify_no < 0 or modify_no > count:
print("존재하지 않는 학생입니다.")
else:
name = input("수정할 이름:")
age = int(input("수정할 나이:"))
score = int(input("수정할 점수:"))
names[modify_idx] = name
ages[modify_idx] = age
scores[modify_idx] = score
elif cmd == 5:
if count == 0:
print("등록된 학생이 없습니다.")
continue
del_no = int(input("삭제할 번호 입력:"))
del_idx = del_no - 1
if del_no < 0 or del_no > count:
print("존재하지 않는 학생입니다.")
else:
names.pop(del_idx)
scores.pop(del_idx)
ages.pop(del_idx)
count -= 1
print(f"{del_no}번 학생을 삭제하였습니다.")
elif cmd == 0:
print("프로그램을 종료합니다.")
break