본문 바로가기
Python

연산자

by Nirah 2023. 1. 12.

 

 

 

산술 연산자

# 산술연산자 +, -, *, / (실수값) //(몫) %(나머지)
print(1+1)
print(2-1)
print(2*2)
print(5/2)
print(5//2)
print(5%2)

2
1
4
2.5
2
1

 

 

 

 

거듭 제곱 연산자

# 거듭 제곱 연산자 **
print(3**3)

27

 

 

 

 

비교 연산자

# 비교 연산자
# 같다 --
# 다르다 !=
# > 좌항이 크다
# < 우항이 크다
# 좌항 크거나 같다 >=
# 우항 크거나 같아 <=

print(1 == 1)
print(1 != 1)
print(2>1)
print(2<1)

 

 

 

 

논리 연산자

# 논리 연산자 and, or, not
print (0 and 1)
print (1 or 2)
print (True and True)
print (True and False)
print (True or False)
print (False or False)
print (not True)
print (not False)

0
1
True
False
True
False
False
True

 

※ 판정

and는 두 값이 모두 True라야 True다. 하나라도 False이면 False가 나온다.

or는 두 값 중 하나라도 True이면 True다. 두 값이 모두 False라야 False가 된다.

 

 

※  연산자의 우선순위 

python 의 연산자 우선순위는

1) NOT 2) AND 3) OR  

 

 

※ 예제

True or True and False 가 True 인 이유는

뒷 부분의 True and False 가 먼저 연산되어 'False'라는 값을 return 하게 되고 

True or False 에서, or 연산자의 처음으로 만나는 값이 True가 되어

뒤의 값을 고려하지 않고 'True'를 return하게 됩니다. 

 

 

 

 

식별 연산자

# 식별 연산자 is, is not
a = 1
b = 2
print(type(a) is type(b))
print(type(a) is int)
print(type(a) is float)
print(type(a) is not float)

True
True
False
True

 

 

 

 

멤버 연산자

# 멤버 연산자 in, not in
print(1 in [1,2,3,4,5])
print(1 not in [1,2,3,4,5])
print(10 not in [1,2,3,4,5])

True
False
True

 

 

 

 

복합 할당 연산자

할당(대입) 연산자 (=)
- 오른쪽 값을 왼쪽에 할당(대입)

복합 연산자
- += : 덧셈 연산후 할당
- -= : 뺄셈 연산후 할당
- *= : 곱셈 연산후 할당
- /= : 나눗셈 연산후 할당
- %= : 나머지 연산후 할당
- //= : 몫 연산후 할당
- **= : 거듭제곱 연산후 할당



a = 3
a -= 1
print(a)  2

a += 2
print(a)  4

a **= 3
print(a)  64

a %= 3
print(a)  1

a /= 2
print (float(a))

 

 

 

 

if else

a = 1
if a % 2 != 0:
    print('even')
else:
    print('Odd')
# a % 2 != 0 이면 참 일시 'even' 아닐시 'Odd' 를 출력하여라

even
---
b = 3
if b % (a-b) == 5:
    print('T')
else:
    print('F')

F
---

 

if else 1단계

두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성해보자

if A > B :
    print("A>B")
elif A < B :
    print('A<B')
else:
    print('A=B')

 

if else 2단계

시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오.

if 90 <= A <= 100:
    print("A")
elif 80 <= A < 90:
    print("B")
elif 70 <= A < 80:
    print("C")
else:
    print("D")

 

if else 3단계

연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오.

윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다.

예를 들어, 2012년은 4의 배수이면서 100의 배수가 아니라서 윤년이다. 1900년은 100의 배수이고

400의 배수는 아니기 때문에 윤년이 아니다. 하지만, 2000년은 400의 배수이기 때문에 윤년이다.

A = 1200
if A%4 == 0 and (not A%100 == 0 or A%400 == 0):
    print(1)
else:
    print(0)