<개인공부>/[Python]

[python] 파이썬 몫과 나머지 구하기 divmod 함수와 //, %기호

BlockDMask 2020. 8. 3. 02:00
반응형

안녕하세요. BlockDMask 입니다.

오늘은 간단하게 파이썬에서 몫을 구하는 방법에 대해서 짧게 적어보려합니다.

정말간단해요.

 

<목차>

1. 파이썬에서 나눗셈 하기

2. 파이썬 나눗셈의 몫을 구하기

3. 파이썬 나눗셈의 나머지 구하기

4. 파이썬 divmod 함수로 몫과 나머지 둘다 가지고 오기

 

1. 파이썬 나눗셈


 

파이썬 나눗셈을 하는데 사용하는 기호는 슬래쉬 ( / ) 하나 입니다.

# 10 나누기 3의 나눗셈을 구하라 a = 10 / 3 print(a)

결과값은 3.33333 이 나옵니다.

몫과 나머지가 그대로 다 나오죠?

 

 

2. 파이썬 나눗셈의 몫 구하기


 

파이썬 나눗셈에서 을 구하는데 사용하는 기호는 슬래시 두개 ( // ) 입니다.

# 10 나누기 3의 몫을 구하라 b = 10 // 3 print(b)

결과 값은 3이 나옵니다.

10 / 3 의 값은 3.33333... 인데 그 중 몫은 소수점을 제외한 3이 됩니다.

 

3. 파이썬 나눗셈의 나머지 구하기


 

파이썬에서 나머지를 구하는 기호는 퍼센트 (%) 기호 입니다.

# 10 나누기 3의 나머지를 구하라 c = 10 % 3 print(c)

결과 값은 1이 나옵니다.

10 을 3으로 나누면 몫이 3이고 나머지는 1이기 때문에 1이 나오게 됩니다.

4. 파이썬 divmod 함수 나눈 몫과 나머지를 받아오기


 

파이썬의 내장함수 중에 divmod 라는 함수가 존재합니다.

이 함수는 매개변수로 숫자를 두개 입력 받아서 몫과 나머지를 튜플 형태로 반환하는 함수 입니다.

 

함수의 모양을 보면 아래와 같이 생겼습니다.

divmod(a, b)

divmod 함수는 매개변수로 받은 a를 b로 나눕니다. 그리고 그 몫과 나머지를 튜플(tuple) 데이터 타입으로 반환합니다.

 

예를 들어

divmod(10, 3) 이라 할때, 10을 3으로 나누고 (= 10 / 3) 그 몫인 3과 나머지인 1튜플 형식으로 (3, 1)로 반환 하는 함수 라는 것 입니다

실제 코드로 한번 볼까요?

# 파이썬 divmod 예제 1 a = divmod(10, 3) print(a)         # (3, 1) 반환  # 파이썬 divmod 예제 2 b = divmod(7, 4) print(b)          # (1, 3) 반환

이렇게 divmod 함수를 이용하면 편하게 몫과 나머지를 구할 수 있습니다.

 

 

주의해야할게 하나 남았습니다.

# 파이썬 divmod 예제 3 : 주의. c = divmod(44, 0) print(c)         # error

당연하겠지만 divmod의 두번째 인자에는 0을 집어 넣으면 에러가 발생합니다

에러 이름과 설명 - "ZeroDivisionError: integer division or modulo by zero"divmod의 두번째 인자로 0을 넣지 않도록 주의 하면서, divmod를 유용하게 사용하면 좋을것 같습니다.

 

이상으로 파이썬 나누기, 몫 구하기, 나머지 구하기, divmod로 몫과 나머지를 튜플로 한번에 구하는 방법까지 알아보았습니다. 감사합니다.

 

반응형