1. Operator 모듈

모듈은 누군가 이미 만들어 놓은 훌륭한 기능이다.

  • 수학 연산 관련 모듈
  • 난수 관련 모듈
  • 연산자 관련 모듈

1.1 산술 연산자 관련 함수

산술 연산자operator 함수
+operator.add()
-operator.sub()
*operator.mul()
/operator.truediv()
%operator.mod()
//operator.floordiv()
**operator.pow()
import operator # operator 모듈 가져오기

num1 = 8
num2 = 3

print('{} + {}: {}'.format(num1, num2, operator.add(num1, num2)))
print('{} - {}: {}'.format(num1, num2, operator.sub(num1, num2)))
print('{} * {}: {}'.format(num1, num2, operator.mul(num1, num2)))
print('{} / {}: {}'.format(num1, num2, operator.truediv(num1, num2))) # truediv: truedivision의 약자
print('{} % {}: {}'.format(num1, num2, operator.mod(num1, num2)))
print('{} // {}: {}'.format(num1, num2, operator.floordiv(num1, num2))) # floordiv: floordivision의 약자
print('{} ** {}: {}'.format(num1, num2, operator.pow(num1, num2)))

1.2 비교 연산자 관련 함수

비교 연산자operator 함수
==operator.eq()
!=operator.ne()
>operator.gt()
>=operator.ge()
<operator.lt()
<=operator.le()
import operator # operator 모듈 가져오기

num1 = 8
num2 = 3

print('{} == {}: {}'.format(num1, num2, operator.eq(num1, num2))) # eq: equal
print('{} != {}: {}'.format(num1, num2, operator.ne(num1, num2))) # not: not equal
print('{} > {}: {}'.format(num1, num2, operator.gt(num1, num2))) # greater than
print('{} >= {}: {}'.format(num1, num2, operator.ge(num1, num2))) # greater than and equal
print('{} < {}: {}'.format(num1, num2, operator.lt(num1, num2))) # less than
print('{} <= {}: {}'.format(num1, num2, operator.le(num1, num2))) # less than and equal

1.3 논리 연산자 관련 함수

논리 연산자operator 함수
andoperator.and_()
oroperator.or_()
notoperator.not_()
import operator # operator 모듈 가져오기

num1 = 8
num2 = 3

print('{} and {}: {}'.format(num1, num2, operator.and_(num1, num2)))
print('{} or {}: {}'.format(num1, num2, operator.or_(num1, num2)))
print('not {}: {}'.format(num1, operator.not_(num1)))


Q1. 이전 시간에 실습했던 백신 접종 대상자 출력 코드를 operator 모듈을 이용해서 변경하기

import operator

age = int(input('나이 입력: '))
vaccine = operator.or_(operator.lt(age, 20), operator.ge(age, 65))

print('age: {}, result: {}'.format(age, vaccine))

Q2. random과 operator 모듈을 사용해서 10시부터 100사이의 난수 중 십의 자리와 일의 자리를 각각 3의 배수인지 판단한하는 코드 작성하기

여기서 random 모듈은 난수를 추출해주는 모듈이다.

import operator
import random

rInt = random.randint(10, 100) # 10에서 100 사이의 난수

num10 = operator.floordiv(rInt, 10) # 난수 중 십의자리
num1 = operator.mod(rInt, 10) # 난수 중 일의 자리

print('난수: {}'.format(rInt))
print('십의 자리: {}'.format(num10))
print('일의 자리: {}'.format(num1))

print('십의 자리는 3의 배수이다.: {}'.format(operator.mod(num10, 3) == 0))
print('일의 자리는 3의 배수이다.: {}'.format(operator.mod(num1, 3) == 0))

profile
거북선통통통통

0개의 댓글