본문 바로가기
IT

파이썬 변수, 연산자, 조건문, 반복문

by Dyudyu_Data 2026. 4. 10.
반응형

👾 변수란?

변수란 값을 가리키는 이름(식별자)입니다. 어떠한 객체에 이름을 붙여준 것입니다. 변수에는 모든 자료형을 할당할 수 있습니다.

변수명의 규칙

  • 문자 또는 _로 시작
  • 숫자로 시작 불가능
  • 예약어(키워드) 사용 불가능
  • 영문자는 대소문자 구분

실무에서 좋은 변수 이름 짓기

  • 나쁜 예 : a, b, c
  • 좋은 예 : total_score, user_age, is_logged_in
  • 나중에 실무에서도 좋은 변수 이름을 지으려면 확실하게 의미가 드러나게 짓는 것이 좋습니다.

변수를 만드는 여러 가지 방법

  • 튜플로 변수에 값 할당
# 튜플로 변수에 값을 할당할 수 있으며 이를 **패킹**이라고 합니다.
a = 11, 22, 33
print(type(a))
print(a)

<class 'tuple'>
(11, 22, 33)

# 튜플을 만든 상태에서 각각의 변수에 값을 할당할 수도 있는데 이를 **언패킹**이라고 합니다.
a, b, c = 11, 22, 33
print(type(b))
print(b)

<class 'int'>
22
  • 리스트로 변수에 값 할당
[d, e] = ['hi', 'hongjoo']
  • 여러 개의 변수에 같은 값을 할당
a = 'hi, hongjoo'
b = 10
a, b = b, a       # a를 b로 b는 a로 두 변수의 값을 간단히 바꾸는 방법

print('a :', a) 
print('b :', b)

a : 10
b : hi, hongjoo

** 주석 푸는 단축키 : ctrl+/ **

🤖 연산자

1. 비교 연산자

비교 연산자는 두 값의 상등 여부나 대소 관계를 비교합니다.

연산자 설명
== 같다
!= 같지 않다.
< 우변이 좌변보다 크다.
> 좌변이 우변보다 크다.
<= 우변이 좌변보다 크거나 같다.
>= 좌변이 우변보다 크거나 같다.

==는 좌변과 우변이 같으면 True를 리턴하고, 다르면 False를 리턴합니다.

2. 논리 연산자

두 개 이상의 조건을 점검할 때는 사용합니다.

연산자 설명
and 두 조건이 모두 참일 때 True를 리턴
or 두 조건 중 하나라도 참일 때 True를 리턴, 두 조건 모두 거짓일 때 False 를 리턴
not 조건을 반대로 뒤집는다. (조건이 T면 F를 F면 T가 나옴)

3. 기타 연산자

파이썬은 다른 프로그래밍 언어에서는 쉽게 볼 수 없는 연산자를 제공합니다.

in not in 설명
x in 리스트 x not in 리스트 리스트 안에 x가 있는지, 없는지 확인
x in 튜플 x not in 튜플 튜플 안에 x가 있는지, 없는지 확인
x in 문자열 x not in 문자열 문자열 안에 x가 있는지, 없는지 확인

🔑 조건문

1. if문

if문은 if, elif, else 를 사용하고 순서에 유의해야 합니다.

if문의 조건을 만족하지 않을 때, elif문의 다른 세부 조건을 점검하고 if문과 elif문의 조건을 모두 만족하지 않은 경우에 나머지 else문의 조건을 수행합니다.

if 조건 1:         # 조건을 쓰고 꼭 문장 끝에 : 붙여주고 다음 줄에서 수행할 문장써야함
    수행할 문장1
    수행할 문장2
elif 조건 2:
    수행할 문장3
    수행할 문장4    
else:
    수행할 문장5
    수행할 문장6

🔃 반복문

1. while문

while 조건:
    수행할 문장

while문과 break

반복문은 조건을 만족하는 동안 반복문 안의 내용을 계속 실행하게 됩니다. 이 경우에 break를 사용하여 강제로 빠져나올 수 있습니다.

a = 0              # a는 0
while a < 10:      # a가 10보다 작을 동안
    a += 1         # a에 a+1의 값을 할당하고
    if a % 2 ==0:  # 만약 a를 2로 나눈 나머지가 0과 동일하면
        **break**      # 루프를 깨버리고 나온다.
    print(a)       # (if문 블럭 밖이므로) 아니라면 a를 출력한다.

while문과 continue

break 명령은 루프를 탈출하는 데 비해 continue 명령은 해당 루프만 건너뛰고 나머지는 계속 수행합니다.

a = 0              # a는 0
while a < 10:      # a가 10보다 작을 동안
    a += 1         # a에 a+1의 값을 할당하고
    if a % 2 ==0:  # 만약 a를 2로 나눈 나머지가 0과 동일하면
        **continue**   # 넘어가고 루프 선두로 돌아가서 계속 루프를 탄다.
    print(a)       # (if문 블럭 밖이므로) 아니라면 a를 출력한다

2. for문과 range함수

for문은 컬렉션의 요소를 순서대로 반복하면서 수행할 문장을 실행하는 반복문입니다.

컬렉션(collection) 은 여러 개의 값을 하나로 묶어서 담아둔 것입니다. for문이 하나씩 꺼내서 반복할 수 있는 대상을 말합니다.

for 변수 in 컬렉션:
    수행할 문장

for문에서의 변수는 i를 자주 씁니다. 참고로 i는 iterator (반복자)의 줄임말입니다.
for문은 리스트나 문자열 등 다양한 방식으로 만들 수 있습니다.

for문은 range 함수와 정말 자주 쓰입니다. range 함수를 이용하면 간단하게 숫자들의 컬렉션을 만들 수 있기 때문입니다. range 함수는 range(시작, 끝+1, 증가)의 형태로 사용합니다.

앞에서 했던 인덱싱처럼 0부터 시작하므로 끝자리를 헷갈리지 않도록 주의해야 합니다.

🚨 오늘의 이슈

1. 논리 연산자 우선순위

not  >  and  >  or

논리 연산 문제는 “우선순위 → 부분 계산 → 전체 계산” 이런 순서로 계산하면 쉽게 풀 수 있다.

정말 모르고 있다가 문제 풀면서 알게 되었습니다. 기억하기!

2. while문과 for문 매우 헷갈림! 😵‍💫

  • 어느 부분에서 어떤 걸 써야 할지 헷갈리는 이슈 발생
  • 공통점은 둘 다 반복문임
  • 반복 횟수 + 종료 조건이 핵심인듯

while문 : 언제 끝날지 모를 때

  • 조건이 만족되는 동안 계속 반복

for문 : 몇 번 반복할지 이미 아는 경우

  • 반복 횟수가 명확할 때 쓰는 반복문
구분 for문 while문
반복 횟수 명확함 불명확
기준 횟수 / 컬렉션 조건
주 용도 리스트, 범위 입력, 상태
안전성 높음 낮음 (실수 시 무한 루프)