sm 기술 블로그
2. 연산자 본문
연산자
프로그램을 짤때 변수나 값을 연산하기 위해 사용되는 부호
(1) 사칙연산
print(1+1) # 2
print(3-2) # 1
print(5*2) # 10
print(6/3) # 2
(2) 제곱 및 나머지 , 몫
print(2**3) # 2^3 = 8
print(5%3) # 나머지 구하기 2
print(10%3) # 1
print(5//3) # 몫구하기 1
print(10//3) # 3
/ 와 // 의 차이점
/ : 나눈 몫을 소수점 까지 표시함
// : 나눈 몫을 정수로만 표시함.
(3) boolean
print(10 > 3) # True
print(4 >= 7) # False
print(10 < 3) # False
print(5 <= 5) # True
print(3 == 3) # True
print(4 == 2) # False
print(3 + 4 == 7) # True
print(1 != 3) # True
print(not(1 != 3)) # False
자바에서는 true/false를 반대로 하기 위해서는 !를 사용하지만 파이썬은 not을 통해서 true/false를 반대로 바꿔준다.
(4) or, and 연산자 (논리 연산자)
print((3 > 0) and (3 < 5)) # True
print((3 > 0) & (3 < 5)) # True
print((3 > 0) or (3 > 5)) # True
print((3 > 0) | (3 > 5)) # True
print(5 > 4 > 3) # True
print(5 > 4 > 7) # False
자바에서 &&은 파이썬에서는 and 혹은 &로 사용한다.
|| 연산은 | 혹은 or 을 사용한다.
(파이썬은 연산을 여러개 사용하여 boolean을 출력할 수도 있다.)
(5) +=, *=, -=, /=, %=
print(2 + 3 * 4) # 14
print((2 + 3) * 4) # 20
number = 2 + 3 * 4 # 14
print(number)
number = number + 2 # 16
print(number)
number += 2 # => number = number + 2
print(number) # 18
number *= 2 # 36
print(number)
number /= 2 # 18
print(number)
number -= 2 # 16
print(number)
number %= 5 # 1
print(number)
의미는 자바와 같다.
파이썬의 비트 연산자는 다음과 같다.
연산자 | 기능 | 문법 | 설명 |
& | 비트 AND | a & b | a와 b의 비트를 AND 연산 |
| | 비트 OR | a | b | a와 b의 비트를 OR 연산 |
^ | 비트 XOR | a ^ b | a와 b의 비트를 XOR 연산(배타적 OR, Exclusive OR) |
~ | 비트 NOT | ~x | x의 비트를 뒤집음 |
<< | 비트 왼쪽 시프트 | a << b | a의 비트를 b번 왼쪽으로 이동시킴 |
>> | 비트 오른쪽 시프트 | a >> b | a의 비트를 b번 오른쪽으로 이동시킴 |
&= | 비트 AND 연산 후 할당 | a &= b | a와 b의 비트를 AND 연산한 후 결과를 a에 할당 |
|= | 비트 OR 연산 후 할당 | a |= b | a와 b의 비트를 OR 연산한 후 결과를 a에 할당 |
^= | 비트 XOR 연산 후 할당 | a ^= b | a와 b의 비트를 XOR 연산한 후 결과를 a에 할당 |
<<= | 비트 왼쪽 시프트 후 할당 | a <<= b | a의 비트를 b번 왼쪽으로 이동시킨 후 결과를 a에 할당 |
>>= | 비트 오른쪽 시프트 후 할당 | a >>= b | a의 |
또한 연산자는 먼저처리되는 우선순위가 있다.
우선 순위 | 연산자 | 설명 |
1 | ( ), list, dictionary, set 내부 연산식 | 괄호, 리스트, 딕셔너리, set 함수 안쪽 연산식 |
2 | list/ tuple의 indexing, slicing | 인덱싱, 슬라이싱 |
3 | ** | 지수 연산자 |
4 | -, +, ~ | 단항 연산자, 비트 반전 연산자 (ex. -10, ~18) |
5 | *, /, //, % | 곱하기 나누기 몫 나머지 |
6 | + , - | 더하기 빼기 |
7 | >> , << | 비트 이동 연산자 (ex. 1 << 4) |
8 | & | 논리곱 / Bitwise AND |
9 | ^ | 배타적 논리합 / Bitwise XOR |
10 | | | 논리합 / Bitwise AND |
11 | in, not in, is, is not, <, <=, >=, !=, == | 비교 연산자 |
12 | not | Boolean NOT |
13 | and | Boolean AND |
14 | or | Boolean OR |
15 | if ~ else | 조건문, 비교문 |
16 | lambda | 람다식 |
'Python' 카테고리의 다른 글
6. 탈출문자 (0) | 2022.05.03 |
---|---|
5. 문자열(슬라이싱/문자열 처리함수) (0) | 2022.05.02 |
4. 랜덤 함수 (0) | 2022.05.02 |
3. 수학 연산(abs/pow/max/min/round/floor/ceil/sqrt) (0) | 2022.05.02 |
1. print (0) | 2022.05.02 |
Comments