[ 오늘의 수업 내용 요약 ]
017_ 산술 연산자 (곱셉/나눗셈)
- 숫자(정수, 실수)를 이용한 곱셈
num1 = 20
num2 = 3.14
result = num1 + num2
print(‘result : {}’.format(result))
print(‘result : %.2f’ % result
=> result : 62.800000000000004
=> result : 62.80
- 문자열을 이용한 곱셈
str1 = ‘Hi’
result = str1 * 7
print(‘result : {}’.format(result))
=> result : Hi Hi Hi Hi Hi Hi Hi
- 숫자(정수, 실수)를 이용한 나눗셈
num1 = 10
num2 = 3
result = num1 / num2
print(‘num1 : {}, num2 : {}’.format(num1, num2))
print(‘result : {}’.format(result)) -> 형식문자열
print(‘result : %.2f’ % result)
=> num1 : 10, num2 : 3
result : 3.3333333333333335
result : 3.33
- 0을 나눗셈 하는 경우 : 결과 항상 0
- 0으로 나누는 경우 : 0으로 나눌 수 없다.
- 나눗셈 결과는 항상 float이다.
018_ 산술연산자 (나머지와 몫)
- 나눗셈 결과 나머지만 구함
num1 = 10
num2 = 3
result = num1 / num2
print(‘num1 : {}, num2 : {}, result : {}’.format(num1, num2, result))
=> num1 : 10, num2 : 3, result : 3.3333333333333335
result = num1 % num2
print(‘num1 : {}, num2 : {}, result : {}’.format(num1, num2, result))
=> num1 : 10, num2 : 3, result : 1
- 나머지 결과 몫만 구함
num1 = 10
num2 = 3
result = num1 / num2
print(‘num1 : {}, num2 : {}, result : {}’.format(num1, num2, result))
=> num1 : 10, num2 : 3, result : 3.3333333333333335
result = num1 // num2
print(‘num1 : {}, num2 : {}, result : {}’.format(num1, num2, result))
=> num1 : 10, num2 : 3, result : 3
- 나머지와 몫을 한번에 구하기
result = divmod(num1, num2)
print(‘result : {}’.format(result))
print(‘몫 : {}’.format(result[0])) -> [0] 인덱스 0이라는 뜻
print(‘나머지 : {}’.format(result[1]))-> [1] 인덱스 1이라는 뜻
=> result : (3, 1)
몫 : 3
나머지 : 1
019_ 산술연산자 (거듭제곱)
- 같은 수를 여러번 곱한 값을 구한다.
num1 = 2
num2 = 3
result = num1 ** num2
print(‘num1 : {}’.format(num1))
print(‘num2 : {}’.format(num2))
print(‘result : {}’.format(result))
=> num1 : 2
num2 : 3
result : 8
- n의m제곱근 공식
n(1/m)
result = 2 3
print(‘2의 제곱근 %f’ % result)
print(‘2의 제곱근 %.2f’% result)
=> 2의 제곱근 : 1.414214
2의 제곱근 : 1.41
- sqrt()함수를 이용한 제곱근 구하기
(sqrt는 모든 수의 2제곱근 값만 구해줌)
import math
print(‘2의 제곱근 %f’ % math.sqrt(2))
print(‘2의 제곱근 %.2f’ % math.sqrt(2))
=> 2의제곱근 : 1.414214
2의 제곱근 : 1. 41
-pow()함수를 이용한 거듭제곱 구하기
print(‘2의 3제곱 %f’ % math.pow(2, 3))
print(‘3의 4제곱 %f’ % math.pow(3, 4))
=> 2의 3제곱 : 8.000000
3의 4제곱 : 81.000000
020_ 복합연산자
- += : 덧셈 연산 후 할당
- -= : 뺄셈 연산 후 할당
- *= : 곱셈 연산 후 할당
- /= : 나눗셈 연산 후 할당
- %= : 나머지 연산 후 할당
- //= : 몫 연산 후 할당
- **= : 거듭제곱 연산 후 할당
021_ 비교연산자 (숫자 비교)
=
- <
- <=
- ==
- !=
연산 결과는 bool(True,False)이다.
022_ 비교연산자 (문자 비교)
-
아스키 코드를 이용한 비교연산
(아스키 코드를 외울 필요는 없음)
-
문자와 아스키 코드 변환
print(‘/’a/‘ -> {}’.format(ard(‘a’)))
print(‘/s/’ -> {}’.format(ard(‘s’)))
print(‘65 -> {}’.format(chr(65)))
print(‘83 -> {}’.format(chr83)))
-
아스키 코드는 대문자 소문자에 따라 숫자 크기가 다르다.
-
문자열 비교 : 문자열 자체 비교
Hello == hello : False
Hello != hello : True
023_ 논리연산자
- 논리연산자 : 피연산자의 논리 (True, Flase_를 이용한 연산
- 논리 연산자 종류
- and
- or
- not
-
and연산 : A 와 B모두 True인 경우만 결과값으로 True이다.
print(‘{} and {} : {}’.format(True, True, (True and True))) => True
print(‘{} and {} : {}’.format(Flase, True, (Flase and True))) => Flase
print(‘{} and {} : {}’.format(True, Flase, (True and Flase))) => Flase
print(‘{} and {} : {}’.format(Flase, Flase, (Flase and Flase))) => Flase
-
or 연산 : A 와 B중 어느 하나만 True이면 결과값은 True이다.
print(‘{} or {} : {}’.format(True, True, (True or True))) => True
print(‘{} or {} : {}’.format(Flase, True, (Flase or True))) => True
print(‘{} or {} : {}’.format(True, Flase, (True or Flase))) => True
print(‘{} or {} : {}’.format(Flase, Flase, (Flase or Flase))) => Flase
-
not 연산 : notA (A의 상태를 부정하는 결과를 나타낸다.)
print(‘not {} : {}’.format(True, (not True))) not True => False
print(‘not {} : {}’.format(False, (not False))) not Flase => True
024_ operator모듈
- 모듈이란 누군가 이미 만들어 놓은 훌륭한 기능
- / operator.truediv()
- % operator.mod()
- // operator.floordiv()
- ** operator.pow()
- operator 모듈을 사용하려면 import operator을 적어야 사용 가능
비교 연산자 관련 함수
1. == operator.eq()
2. != operator.ne()
3. > operator.gt()
4. >= operator.ge()
5. < operator.lt()
6. <= operator.le()
논리 연산자 관련 함수
1. and operator.and()
2. or operator.or()
3. not operator.not_()