◾연산자
- 피연산자를 이용해 계산을 하는 기호
- 산술 연산자 : +, -, *, /, %, //, **
- 할당 연산자 : =, +=, -=, *=, /=, %=, //=
- 비교 연산자 : >, >=, <, <=, ==, !=
- 논리 연산자 : and, or, not
- 정수, 실수의 산술 연산에서는 기본적으로 범위가 큰 자료형으로 형변환된다.
◾산술 연산자
◽덧셈
num1 = 9; num2 = 3
result = num1 + num2
print(f'result : {result}')
fNum1 = 1.3; fNum2 = 3.14
result = fNum1 + fNum2
print(f'result : {result}')
result = fNum1 + num1
print(f'result : {result}')
str1 = 'Good'; str2 = ' '; str3 = 'morning'
result = str1 + str2 + str3
print(f'result : {result}')
- 숫자와 문자(열) 덧셈 => 연산이 일어날 수 없는 자료형간에는 오류 발생
num1 = 15; str1 = 'hello'
result = num1 + result
◽뺄셈
num1 = 9; num2 = 3
result = num1 - num2
print(f'result : {result}')
fNum1 = 1.3; fNum2 = 3.14
result = fNum1 - fNum2
print(f'result : {result}')
result = fNum1 - num1
print(f'result : {result}')
◽곱셈
num1 = 20; fNum1 = 3.14
result = num1 * fNum1
print('result : {}'.foramt(result))
- 문자(열) 곱셈 : 해당 데이터를 곱한 횟수만큼 반복
str1 = 'Hi
result = str1 * 7
print('result : {}'.format(result))
◽나눗셈
- 정수, 실수 나눗셈 : 나눗셈 결과는 항상 float형
num1 = 10; num2 = 2
result = num1 / num2
print('result : {}'.format(result))
print('type of result : {}'.format(type(result)))
- 0을 나눗셈하는 경우 : 항상 0
- 0으로 나눗셈하는 경우 : 오류 발생
num1 = 0; num2 = 3
result = num1 / num2
print('result : {}'.format(result))
◽나머지, 몫 연산
num1 = 10; num2 = 3
result = num1 % num2
print('result : {}'.format(result))
num1 = 10; num2 = 3
result = num1 // num2
print('result : {}'.format(result))
- 나머지-몫연산
divmod() 함수
사용
- 몫과 나머지를 튜플 형태로 반환 : (몫, 나머지)
num1 = 10; num2 = 3
result = divmod(num1, num2)
print('result : {}'.format(result))
print('몫 : {}'.format(result[0]))
print('나머지 : {}'.format(result[1]))
◽거듭제곱
num1 = 2; num2 = 3
result = num1 ** num2
print('result : {}'.format(result))
- 제곱근 : 특정 수가 되기위해 거듭제곱해야하는 수
- **을 활용하여 계산할 수 있다
- n ** (1/m) : n의 m제곱근
result = 2 ** (1/2)
print('2의 제곱근 %f' % result)
print('2의 제곱근 %.2f' % result)
result = 2 ** (1/3)
print('2의 3제곱근 %f' % result)
print('2의 3제곱근 %.2f' % result)
- math 모듈
- sqrt() : 제곱근을 구하는 함수(단, 2제곱근만을 구한다.)
- pow() : 제곱을 구하는 함수
import math
print('2의 제곱근 %.2f' % math.sqrt(2))
print('3의 제곱근 %.2f' % math.sqrt(3))
print('4의 제곱근 %.2f' % math.sqrt(4))
print('2의 3제곱 %.2f' % math.pow(2, 3))
print('3의 4제곱 %.2f' % math.pow(3, 4))
◾복합 연산자
- 할당(대입) 연산자 = : 오른쪽 값을 왼쪽에 할당(오른쪽 데이터의 연산 진행 후 할당)
- 복합 연산자 : 연산과 대입를 한꺼번에 표현하는 연산자
- += : 덧셈 연산 후 할당
- -= : 뺄셈 연산 후 할당
- *= : 곱셈 연산 후 할당
- /= : 나눗셈 연산 후 할당
- %= : 나머지 연산 후 할당
- //= : 몫 연산 후 할당
- **= : 거듭제곱 연산 후 할당
num = 10
num += 3
print('num : {}'.format(num))
num = 10
num -= 3
print('num : {}'.format(num))
num = 10
num *= 3
print('num : {}'.format(num))
num = 10
num /= 3
print('num : {}'.format(num))
num = 10
num %= 3
print('num : {}'.format(num))
num = 10
num //= 3
print('num : {}'.format(num))
num = 10
num **= 3
print('num : {}'.format(num))