> 백엔드 개발 > 파이썬 튜토리얼 > Python의 모듈로 연산자가 음수로 긍정적인 결과를 생성하는 이유는 무엇입니까?

Python의 모듈로 연산자가 음수로 긍정적인 결과를 생성하는 이유는 무엇입니까?

DDD
풀어 주다: 2024-11-29 20:38:11
원래의
916명이 탐색했습니다.

Why Does Python's Modulo Operator Produce a Positive Result with Negative Numbers?

음수에 대한 Python 모듈로 연산자 동작

Python의 모듈로 연산자(%)는 C 또는 C와 다르게 음수를 처리합니다. 이러한 언어와 달리 Python의 모듈로 연산자는 결과가 분모와 동일한 부호를 갖도록 항상 보장합니다.

왜 -5 % 4는 -1이 아닌 3으로 평가됩니다

-5 % 4라는 표현을 생각해 보세요. 이 경우 계산은 다음과 같이 진행되므로 3으로 평가됩니다. 다음:

  • (-5) / 4 = -1.25(부동 소수점 나누기)
  • Floor(-1.25) = -2(소수 부분 제거)
  • (-5) % 4 = (-2 × 4 3) % 4 = 3

Python은 일반적으로 음수가 아닌 결과가 더 유용하기 때문에 이 동작을 선택합니다. 예를 들어, (2 - N) % 7 공식을 사용하여 요일을 계산할 때 모듈로 연산자는 결과가 요일을 나타내는 [0, 6] 범위 내에 있는지 확인합니다.

C 행동과 대조

C에서 이 공식에서 N이 3보다 크거나 같으면 결과는 음수가 됩니다. 유효한 일수. 올바른 결과를 얻으려면 C에서는 음수 결과에 7을 더하여 수동으로 조정해야 합니다.

다양한 언어에서 음수를 사용하는 모듈로 연산자의 동작에 대한 자세한 내용은 모듈로에 대한 Wikipedia 기사를 참조하세요. 연산자입니다.

위 내용은 Python의 모듈로 연산자가 음수로 긍정적인 결과를 생성하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿