
🧩 변수
- 컴퓨터 메모리에 데이터를 적재하는 공간
- 컴퓨터 운영체제가 해당 공간을 확보함 (프로그램 종료 → 메모리반납)
변수이름 = 변수에저장할값= (assignment) 기호사용>>> a = 1 # 정수
>>> b = "python" # 문자열
>>> c = 1.34 # 실수
📍 [+ 더하기연산]
a = 20
b = 10
c = a + b
print(c) # 30
📍 [- 빼기연산]
a = 20
b = 10
c = a - b
print(c) # 10
📍 [* 곱하기연산]
a = 20
b = 10
c = a * b
print(c) # 200
📍 [/ 나누기연산]
a = 10
b = 3
c = a / b
print(c) # 3.3333333333335 (소수점아래 출력)
📍 [// 정수 몫]
a = 10
b = 3
c = a // b
print(c) # 3
📍 [% 나머지연산]
a = 10
b = 3
c = a % b
print(c) # 1
📍 [** 누승연산]
a = 10
b = 3
c = a ** b
print(c) # 1000
결과값은 True or False로 출력
| 코드 | 의미 |
|---|---|
| > | 크다 |
| >= | 크거나같다 |
| <= | 작거나같다 |
| == | 같다 |
| != | 같지않다 |
논리 값을 판단해주는 연산자
| 코드 | 의미 |
|---|---|
| and | 논리곱 |
| or | 논리합 |
| not | 논리부정 |
| 연산자 | 동치 |
|---|---|
| a += 10 | a = a + 10 |
| a -= 10 | a = a - 10 |
| a *= 10 | a = a * 10 |
| a /= 10 | a = a / 10 |
| a %= 10 | a = a % 10 |
| a //= 10 | a = a // 10 |
| a **= 10 | a = a ** 10 |

🧩 숫자형: 숫자 형태로 이루어진 자료형
| 항목 | python example |
|---|---|
| 정수 | 123, -345, 0 |
| 실수 | 123.45, -1234.5, 3.4e10 |
| 8진수 | 0o34 |
| 16진수 | 0×2A |
🧩 문자열: 문자, 단어 등으로 구성된 문자들의 집합
a = "Life is too short, You need Python"
b = "a"
c = "123"
"" or '' # 공백가능
🧩 리스트: 자료형의 집합을 표현할 수 있는 자료형
- 집합 : 데이터의 묶음
- 자료형 : 정수, 실수, 문자열
odd = [1, 3, 5, 7, 9]
여러가지 자료형 섞어 사용 가능 ✅특정데이터 추가, 삭제, 검색 용이 ✅📎 리스트와 튜플 차이점
| 리스트 | 튜플 | |
|---|---|---|
| 괄호 | [ ] | ( ) |
| 값 | 생성•수정•삭제 ✅ | 변경 ⛔️ |
📎 튜플 특징
t1 = ()
t2 = (1,)
t3 = (1, 2, 3)
t4 = 1, 2, 3
t5 = ('a', 'b', ('ab', 'cd'))
🧩 딕셔너리: Key와 Value의 여러 쌍 {Key : Value}
📍 {Key1 : Value1, Key2 : Value2, Key3 : Value3 •••}
dic = {'name' : 'mallang', 'age' : '22', 'birth' : '0412'}
a = {1 : 'hi'}
b = {'a' : [1, 2, 3]}
🧩 집합: 집합에 관련된 것을 쉽게 처리함
- 중복값 ⛔️ + 순서 ❌
📍 set() 리스트
s1 = set([1, 2, 3])
>>> s1 # {1, 2, 3}
📍 set() 문자열
s2 = set("Hello")
>>> s2 # {'e', 'H', 'l', 'o'}
set()으로 생성
🧩 if 조건문
① 조건문 True ➡️ if 블럭 수행
② 조건문 False ➡️ else 블럭 수행
>>> a = 10
>>> if a % 2 == 0: # 조건문 True
print("짝수입니다") # 실행
else:
print("홀수입니다")
>>> 짝수입니다
🧩 while 반복문: 조건문 True인 동안 → while문 아래 문장 반복수행
>>> treeHit = 0
>>> while treeHit < 10:
treeHit += 1
print("나무 %d번 찍었습니다." % treeHit)
if treeHit == 10:
print("나무 넘어갑니다.")
>>> 나무를 1번 찍었습니다.
나무를 2번 찍었습니다.
나무를 3번 찍었습니다.
나무를 4번 찍었습니다.
나무를 5번 찍었습니다.
나무를 6번 찍었습니다.
나무를 7번 찍었습니다.
나무를 8번 찍었습니다.
나무를 9번 찍었습니다.
나무를 10번 찍었습니다.
나무 넘어갑니다.
🧩 for 반복문
for 변수 in 리스트•튜플•문자열
➡️ 리스트•튜플•문자열 [1st 요소 ~ last 요소] → 차례대로 변수에 대입
📍 예제1
>>> a = [(1, 2), (3, 4), (5, 6)] // 리스트
>>> for (first, last) in a:
print(first + last)
>>> 3
7
11
📍 예제2
# 총 5명의 학생이 시험을 보았는데 시험 점수가 60점 이상이면 합격이고
# 그렇지 않으면 불합격이다.
# 합격인지 불합격인지 결과를 보여 주시오.
>>> grades = [90, 25, 67, 45, 80]
>>> num = 0
>>> for grade in grades:
num += 1
if grade >= 60:
print("%d번 학생 합격" % num)
else:
print("%d번 학생 불합격" % num)
>>> 1번 학생 합격
2번 학생 불합격
3번 학생 합격
4번 학생 불합격
5번 학생 합격
🧩 def 함수
- def : 함수를 만들때 사용하는 예약어
- 함수명 : 프로그래머가 임의로 만들 수 있음
- (매개변수) : 함수에 입력으로 전달되는 값을 받는 변수
📍 함수구조
>>> def 함수명(매개변수):
<수행할문장①>
<수행할문장②>
📍 add 함수 정의하기
>>> def add(a, b): # 매개변수로 a, b 두개의 값을 받음
return a + b # 입력받은 두 값을 더해 반환
📍 add 함수 호출하기
>>> a = 3
>>> b = 4
>>> c = add(a, b) # add(3, 4) return 값 → c 변수에저장
>>> print(c) # 7
📎 매개변수와 인수
| 구분 | 의미 |
|---|---|
| 매개변수 | 함수에 전달된 값을 저장하는 변수 |
| 인수 | 함수에 전달하는 값 |
📍 a, b → 매개변수
>>> def add(a, b):
return a + b
📍 3, 4 → 인수
>>> print(add(3, 4))
📍 클래스생성
>>> class FourCal:
def setdata(self, first, second): # 초기값입력
self.first = first
self.second = second
def add(self): # 메서드
result = self.first + self.second
return result
def mul(self): # 메서드
result = self.first * self.second
return result
def sub(self): # 메서드
result = self.first - self.second
return result
def div(self): # 메서드
result = self.first / self.second
return result
📍 객체생성
>>> a = FourCal()
>>> b = FourCal()
>>> a.setdata(4, 2)
>>> b.setdata(3, 8)
🧩 생성자: 객체가 생성될 때 → 자동으로 호출되는 메서드 (객체 초기값 설정 시 사용)
__init__ 메서드
>>> class FourCal:
def __init__(self, first, second): # 생성자
self.first = first
self.second = second
•••

📍 변수문자열
# 1. 변수a 문자열에서 0번째와 10번째 문자를 출력하시오.
>>> a = 'The Cyber University of Korea'
>>> print(a[0], a[10]) # T U
# 2. 변수adress 뒤 3자리만 출력하시오.
>>> address = "종로구 북촌로 106"
>>> print(address[8:]) # 106
>>> print(address[-3:]) #106
# 3. 전화번호에서 하이픈을 제거하고 출력하시오.
>>> num = "010-1234-5678"
>>> answer = num.replace("-", "")
>>> print(answer) # 01012345678
📍 리스트
# 1. 슬라이싱을 활용해 리스트 앞 절반을 nums1,
# 뒤 절반을 nums2에 저장하시오.
>>> nums = [3, 5, 7, 11, 16, 18, 32, 64]
>>> nums1 = [0:4] # 이상 : 미만
>>> nums2 = [4:]
>>> print(nums1) # [3, 5, 7, 11]
>>> print(nums2) # [16, 18, 32, 64]
# 2. 다음 리스트의 출력결과를 예시와 같이 출력하시오.
# rank = ['마케팅부', '경영관리부', '고객관리부', '생산부', '서비스부']
# 마케팅부/경영관리부/고객관리부/생산부/서비스부
>>> rank = ['마케팅부', '경영관리부', '고객관리부', '생산부', '서비스부']
>>> join_string = "/".join(rank)
# join메서드 : "원소하나끝날때마다붙일것".join(list변수명)
>>> print(join_string) # 마케팅부/경영관리부/고객관리부/생산부/서비스부
>>> print(type(join_string)) # <class 'str'>
# 3. 리스트에서 for문을 사용해 문자 첫글자를 대문자로 바꾸시오.
>>> my_list = ["hello", "world", "hi", "python"]
>>> for i in my_list:
a = i[0].upper() + i[1:]
print(a) # Hello World Hi Python
📍 반복문
# 1. range()구문을 이용해 sample_list를 아래와 같이 출력하시오.
# 가 나 [0] [1]
# 나 다 [1] [2]
# 다 라 [2] [3]
>>> sample_list = ["가", "나", "다", "라"]
# i에 0~3까지 차례로 들어감
>>> for i in range(0, len(sample_list) -1):
print(sample_list[i], sample_list[i + 1])
📍 함수
# 1. 하나의 리스트를 입력받아 홀수만 출력하는 함수를 정의하시오.
>>> def print_even(def_list):
for i in def_list:
if i % 2 != 0:
print(i)
📍 클래스
# 1. 사칙연산함수를 메서드로 하는 Calc 클래스를 만드시오.
>>> class Calc():
def __init__(self, a, b): # 생성자
self.a = a
self.b = b
def add(self):
return self.a + self.b
def sub(self):
return self.a - self.b
def mul(self):
return self.a * self.b
def div(self):
return self.a / self.b