2. 데이터 연산
Arithmetic · Comparison · Logical · Bitwise
산술 연산자
| 연산자 | 의미 |
|---|---|
+ - * / | 덧셈 · 뺄셈 · 곱셈 · 나눗셈 |
// | 나눈 몫 |
% | 나머지 |
** | 거듭제곱 |
문자열의 +, * 연산
문자열에서 +는 문자열을 연결하고, 문자열과 정수의 *는 문자열을 반복한다.
비교 연산자
<, >, ==, !=, <=, >=를 사용하며 결과는 True 또는 False가 된다.
비교 연산자는 수뿐 아니라 문자열에도 사용할 수 있다. 문자열은 앞에서부터 문자를 비교하며, 처음 달라지는 문자의 코드값에 따라 결과가 결정된다.
논리 연산자
not, and, or를 이용하면 여러 조건을 결합할 수 있다.
비트 단위 연산자
정수의 2진수 비트를 기준으로 ~, &, |, ^, <<, >> 연산을 수행한다.
연산자 우선순위
여러 연산자가 한 식에 함께 있으면 정해진 우선순위에 따라 계산된다.
| 높음 → 낮음 | 연산 |
|---|---|
| 1 | ** |
| 2 | 단항 +, -, ~ |
| 3 | * / // % |
| 4 | + - |
| 5 | << >> |
| 6 | & → ^ → | |
| 7 | 비교 연산 |
| 8 | not → and → or |
복합식에서는 계산 순서가 분명하도록 괄호를 사용하는 습관도 함께 익힌다.
확인하기
7 // 2와7 % 2의 결과를 비교한다.n % 2 == 0 and n % 3 == 0이 의미하는 조건을 문장으로 바꿔 본다.3 & 5,3 | 5,3 ^ 5를 2진수로 직접 비교해 본다.2 + 3 * 4와(2 + 3) * 4의 결과가 다른 이유를 설명한다.