프로그래밍 개발 공부

[Python 학습] 1-5 연산자는 단순한 계산기가 아니었다! (산술·비교·논리 연산자의 진짜 동작 원리)

wikys 2026. 4. 13. 14:09
파이썬 기초 문법을 공부하면서 변수와 자료형 다음으로 만나게 된 개념은 바로 '연산자(Operator)'다. 처음에는 "연산자? 그냥 덧셈, 뺄셈 같은 수학 계산기 아닌가?"라고 가볍게 생각했다. 하지만 오늘 학습을 정리하면서 깨달은 점은, 프로그램에서 연산자는 단순한 계산 도구를 넘어 프로그램의 흐름을 결정하는 핵심적인 '판단 도구'라는 사실이다.
 
오늘은 파이썬에서 연산자가 구체적으로 어떻게 동작하는지, 그리고 산술, 비교, 논리 연산이 어떻게 서로 연결되는지 내가 이해한 흐름대로 정리해 보려고 한다.
 

--------------------------------------------------------------------------------

1. 연산자는 값에 작업을 적용하는 도구다
프로그램은 단순히 데이터를 저장만 하는 것이 아니라, 그 값을 바꾸고 비교하고 조건에 따라 다른 행동을 해야 한다. 연산자는 이러한 '계산'과 '판단'을 코드 안에서 표현하는 가장 기본적인 수단이다. 연산자를 이해하는 것은 곧 프로그램이 데이터를 어떻게 요리하는지 그 규칙을 배우는 것과 같았다.
 

--------------------------------------------------------------------------------

2. 새로운 값을 만들어내는 '계산' : 산술 연산자
가장 익숙한 형태의 연산자다. +, -, *, / 같은 기본 사칙연산 외에도 파이썬에는 몫을 구하는 //, 나머지를 구하는 % 연산자가 있다.
  • 특징 : 숫자형 데이터에 주로 사용되며, 연산의 결과물로 '새로운 숫자값'을 만들어낸다.
  • 자료형에 따른 변화 : 흥미로웠던 점은 같은 + 연산자라도 숫자에 쓰면 덧셈이 되지만, 문자열에 쓰면 문자열을 이어 붙이는 동작을 한다는 것이다 (예: "Hello" + " Python"). 연산자는 데이터의 자료형에 따라 다르게 동작할 수 있음을 기억해야겠다.
 
--------------------------------------------------------------------------------
3. 참과 거짓을 판별하는 '판단' : 비교 연산자
산술 연산이 계산이라면, 비교 연산자(>, <, >=, <=, ==, !=)는 두 값을 비교하여 관계의 성립 여부를 '판단'한다.
  • 결과값의 차이 : 산술 연산과 가장 큰 차이점은 결과값이 숫자가 아니라, True(참) 또는 False(거짓)라는 불리언(Boolean) 값으로 나온다는 것이다.
  • 가장 많이 하는 실수 : 오늘 배운 내용 중 가장 주의해야 할 부분은 대입 연산자인 =와 비교 연산자인 ==의 구분이다. 변수에 값을 넣을 때는 =, 두 값이 같은지 판단할 때는 ==를 써야 하는데, 이 둘을 혼동하면 치명적인 오류가 발생한다.
 

--------------------------------------------------------------------------------

4. 판단을 더 정교하게 조합하는 '조건의 확장' : 논리 연산자
현실 세계의 조건은 "나이가 20살 이상인가?"처럼 하나로 끝나는 경우보다, "나이가 20살 이상이고(and), 티켓을 가지고 있는가?"처럼 복합적인 경우가 많다. 논리 연산자(and, or, not)는 이러한 비교 연산의 결과(True/False)들을 엮어서 최종 판단을 내리는 역할을 한다.
  • and : 양쪽 모두 참일 때만 True
  • or : 둘 중 하나라도 참이면 True
  • not : 참과 거짓을 뒤집음
이 부분에서 정말 신기했던 개념은 단락 평가(Short-Circuit Evaluation)다. 예를 들어 or 연산에서 첫 번째 조건이 이미 True라면, 파이썬은 굳이 뒤의 조건을 확인하지 않고 평가를 멈춘다. 불필요한 연산을 줄여 프로그램의 속도와 효율성을 높이는 똑똑한 동작 원리였다.
 

--------------------------------------------------------------------------------

5. 여러 연산자가 섞여 있을 때 : 연산자 우선순위
식이 복잡해지면 계산 순서가 헷갈린다. 파이썬은 산술 -> 비교 -> 논리 순으로 우선순위를 가진다. 즉, 먼저 숫자를 계산하고(산술), 그 값들을 비교한 뒤(비교), 마지막으로 조건들을 조합(논리)하는 자연스러운 사고의 흐름을 따른다. 하지만 모든 순서를 달달 외울 필요는 없다고 한다. 코드를 작성할 때 헷갈린다면 가장 강력한 도구인 괄호 ()를 사용하여 내가 원하는 계산 순서를 명확히 지정해 주는 것이 가독성도 높이고 버그도 예방하는 좋은 코딩 습관이라는 것을 배웠다.
 

--------------------------------------------------------------------------------

💡 오늘의 학습 요약 및 마무리
  • 산술 연산은 새로운 값을 생산한다 (얼마인가?).
  • 비교 연산은 조건의 참/거짓을 생산한다 (맞는가?).
  • 논리 연산은 여러 판단을 결합한다.
 
결국 프로그램은 '계산(산술)'과 '판단(비교/논리)'을 끊임없이 오가며 동작하는 것이었다. 연산자가 어떻게 동작하는지 완벽히 이해했으니, 다음 학습 단계인 이 판단들을 활용해 프로그램의 길을 나누는 '조건문(if)'과 '반복문(while/for)'도 한결 수월하게 다룰 수 있을 것 같다.
 
반응형