- 5. 연산자 (Python Operators)2024년 07월 08일 18시 04분 01초에 업로드 된 글입니다.작성자: slow-tempo
산술 연산자
수학 연산을 하는 연산자입니다.
우선순위는 수학의 사칙연산하고 동일합니다.
괄호로 묶는 것이 가장 우선순위이므로 헷갈리면 괄호로 묶는 것이 좋습니다.+ (더하기)
a=1 b=1.1 c=a+b print(c)
더보기2.1
- (빼기)
a=3 b=2.1 c=a-b print(c)
더보기0.9
* (곱하기)
a=2 b=3 c=a*b print(c)
더보기6
** (제곱)
a=2 b=3 c=a**b print(c)
더보기8
/ (나누기)
a=3 b=2 c=a/b print(c)
더보기1.5
// (몫)
a=3 b=2 c=a//b print(c)
더보기1
% (나머지)
a=5 b=2 c=a%b print(c)
더보기1
산술 연산자 우선순위 예시
a=3 b=5 c=5//2*b**2+2 print(c)
더보기52
처리 순서:
1. b**2 = 25
2. 5//2 = 2
3. (순서 2 값)*(순서 1 값)= 50
4. (순서 3 값)+2 = 52괄호로 묶었을 때:
c=((5//2)*(5**2))+2
비교 연산자
비교(관계) 연산자는 기호를 기준으로 좌변과 우변을 비교합니다.
== (같은가?)
a=1 b=1 c= a==b print(c)
더보기True
!= (다른가?)
구버전에서는
<>
표기하였습니다.a=1 b=2 c= a!=b print(c)
더보기True
<,> (무엇이 더 큰가?, 작은가)?)
a=1 b=2 print(a>b) print(a<b)
더보기False
True>=,<= (크거나 같다. 작거나 같다.)
a=1 b=2 print(a<=1) print(a>=1) print(a<=b) print(a>=b)
더보기True
True
True
False할당 연산자
변수에 값을 할당합니다.
산술 연산자와 활용하여 식을 간단히 합니다.
대입 연산자의 우선순위는 우변을 계산하고 마지막에 좌변을 계산합니다.= 대입
a=1 print(a)
더보기1
+= (좌변과 우변을 더하고 대입)
a=1 a+=1 print(a)
더보기2
-= (좌변과 우변을 빼고 대입)
a=1 a-=1 print(a)
더보기0
*= (좌변과 우변을 곱하고 대입)
a=2 a*=2 print(a)
더보기4
**= (좌변과 우변을 제곱하고 대입)
a=3 a**=3 print(a)
더보기27
/= (좌변과 우변을 나누고 대입)
a=4 a/=2 print(a)
더보기2.0
//= (좌변과 우변을 나누고 몫만 대입)
a=5 a//=2 print(a)
더보기2
%= (좌변과 우변을 나누고 나머지만 대입)
a=4 a%=3 print(a)
더보기1
대입연산자 우선순위 예시
a=2 a*=2+3/2 print(a)
더보기7.0
처리 순서:
1. 3/2 = 1.5
2. 2+( 순서 1 값 ) = 3.5
4. a*=(순서 2 값) = 7괄호로 묶었을 때:
a*=(2+(3/2))
논리 연산자
논리연산자 기준으로 좌변과 우변을 논리연산을 합니다
and (둘 다 참인가?)
print(True and True) print(True and False) print(False and True) print(False and False)
더보기True
False
False
Falseor (하나라도 참인가?)
print(True or True) print(True or Flase) print(Flase or True) print(Flase or Flase)
더보기True
True
True
Falsenot (반대로)
print(not True) print(not Flase)
더보기False
TrueBItwise(비트) 연산자
연산을 2진법으로 바꿔서 계산합니다.
& (AND 연산)
각 비트 위치마다. 논리연산자 And연산을 합니다.
a=58 # (0b00111010) b=105 # (0b01101001) print(a&b)
더보기40
비트 계산:
0011 1010
&0110 1001
=0010 1000
| (OR 연산)
각 비트 위치마다 논리연산자 OR연산을 합니다.
|
를 입력하는 방법은 Enter(엔터) 근처에 있는 \를 Shift(쉬프트)를 누르고 입력하면 됩니다.a=58 # (0b00111010) b=105 # (0b01101001) print(a|b)
더보기123
비트 계산:
0011 1010
&0110 1001
=0111 1011
^ (XOR 연산)
각 비트 위치마다 다르면 1, 같으면 0입니다.
a=58 # (0b00111010) b=105 # (0b01101001) print(a^b)
더보기83
비트 계산:
0011 1010
&0110 1001
=0101 0011
~(Complement 연산)
a=58 # (0b00111010) print(~a)
더보기-59
비트 계산:
~ 0011 1010
=1100 0101
<<, >> (Shift 연산)
오른쪽 수만큼 이동시키는 연산. 비트 범위를 넘어가는 비트는 무시합니다.
a=58 # (0b00111010) print(a>>2) print(a<<2)
더보기14
232비트 계산:
0011 1010 >>2 =0000 1110
0011 1010 <<2 =1110 1000
membership(멤버십) 연산자
리스트나, 튜플, 문자열 등의 자료형에서 값의 유무를 확인합니다.
in (안에 있는가?)
나중에 for 문에서 유용하게 사용합니다.
a=[1,2,3,4] print(2 in a)
더보기True
not in (안에 없는가?)
a=[1,2,3,4] print(5 not in a)
더보기True
Identity(식별) 연산자
두 객체의 메모리 위치를 비교합니다.
is (메모리 공간이 같은가?)
a = "ABC" b = a c = "ABC" print(a is b) print(a is c)
더보기True
True짧은 문자열은 같은 메모리를 재활용합니다.
is not (메모리 공간이 다른가?)
a = [1, 2, 3] b = a c = [1, 2, 3] print(a is not b) print(a is not c)
더보기False
Truelist는 값이나 크기가 변경될 수 있어서 다른 메모리 위치에 저장하는 특성이 있습니다.
참고자료: 연산자 우선순위
Operator Description ** 지수 곱셈 ~, +,` Ccomplement, 단항 플러스(양의 부호)와 단항 마이너스(음의 부호) *, /, //, % 곱셈, 나누셈, 몫, 나머지 +. - 덧셈과 뺼셈 >>, << 비트 시프트 & 비트'AND' ^,| 비트 전용 'XOR'과 'OR' <=, <, >, >= 비교 연산자 ==, !=(<>) 평등 연산자 =, +=, -=, *=, **=, /=, //=, %= 할당 연산자 is, is not 식별 연산자 in, not in 멤버쉽 연산자 and, or, not 논리 연산자 'Python' 카테고리의 다른 글
7. 반복문(Python Loop) (0) 2024.07.12 6. 조건문 (Python Conditionals) (0) 2024.07.10 4. 변수와 자료형 (Python Variable & Data Type) (2) 2024.07.08 3. 입출력 (Python Input & Print) (0) 2024.07.08 2. 파이썬 기본 문법 목차(Python Basic index) (0) 2024.07.03 다음글이 없습니다.이전글이 없습니다.댓글