Python의 대입 연산자(=)
Python에서 = 기호는 대입(할당, Assignment) 연산자로 정의됩니다. 이 연산자는 왼쪽에 하나의 변수가, 오른쪽에는 표현식(expression)이 위치해야 합니다. 그리고 오른쪽 표현식의 결과값이 왼쪽 변수에 저장되는 방식으로 동작합니다.
중요한 점은 변수와 표현식의 위치를 서로 바꿀 수 없다는 것입니다. 만약 순서를 반대로 작성하면 SyntaxError가 발생합니다.
>>> a=10 >>> b=20 >>> c=a+b >>> a,b,c (10, 20, 30) >>> a+b=c SyntaxError: can't assign to operator
위 예시에서 볼 수 있듯이, c=a+b처럼 올바르게 작성하면 표현식의 값인 30이 변수 c에 정상적으로 대입됩니다. 반면 a+b=c처럼 왼쪽에 표현식을 두면 Python 인터프리터는 문법 오류(SyntaxError)를 발생시킵니다.
Python의 동등 비교 연산자(==)
반면 == 기호는 비교 연산자로, '같음(equal to)' 연산자라고 부릅니다. 이 연산자는 양쪽 피연산자의 값이 서로 같으면 True를 반환하고, 다르면 False를 반환합니다.
>>> 10+2 == 10 False >>> (10+2) == 12 True >>> 'computer' == 'Computer' False >>> 'computer' == "computer" True
예시를 살펴보면:
10+2 == 10: 계산 결과 12는 10과 다르므로False를 반환합니다.(10+2) == 12: 계산 결과 12와 12가 같으므로True를 반환합니다.'computer' == 'Computer': 문자열 비교는 대소문자를 구분하므로False를 반환합니다.'computer' == "computer": 작은따옴표와 큰따옴표는 문자열에 영향을 주지 않으므로True를 반환합니다.
핵심 요약
정리하면 =는 값을 변수에 저장하는 대입 연산자이고, ==는 두 값이 같은지 확인하는 비교 연산자입니다. 초보자들이 가장 흔히 저지르는 실수 중 하나가 조건문(if문)에서 == 대신 =를 사용하는 것이므로, 두 연산자의 역할을 명확히 구분해서 사용하는 것이 중요합니다.