Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 숫자의 거듭제곱을 구하는 방법 총정리

파이썬에서 숫자의 거듭제곱(멱승)을 계산하는 방법은 크게 두 가지가 있습니다. 각 방법의 특징과 차이점을 예제와 함께 살펴보겠습니다.

1. math.pow() 함수 사용하기

파이썬의 표준 라이브러리인 math 모듈에서 제공하는 math.pow() 함수를 사용하면 거듭제곱을 계산할 수 있습니다. 이 함수는 밑(base)과 지수(exponent) 두 개의 인자를 받으며, 항상 실수(float) 타입의 결과를 반환한다는 특징이 있습니다.

>>> import math
>>> math.pow(10, 2)
100.0

위 예제에서 결과가 100이 아닌 100.0으로 출력되는 것을 확인할 수 있습니다. 이는 math.pow()가 내부적으로 부동소수점 연산을 수행하기 때문입니다.

2. 지수 연산자(**) 사용하기

파이썬에서 가장 널리 사용되는 방법은 전용 연산자인 **(거듭제곱 연산자)를 활용하는 것입니다. 별도의 모듈 임포트 없이 바로 사용할 수 있어 간편합니다.

>>> 10**2
100

** 연산자는 피연산자가 모두 정수일 경우 정수(int) 타입으로 결과를 반환합니다. 따라서 정수 연산에서는 math.pow()보다 메모리 효율적이며, 매우 큰 정수도 정확하게 계산할 수 있다는 장점이 있습니다.

추가: 내장 함수 pow() 활용하기

이 외에도 파이썬의 내장 함수인 pow()를 사용할 수 있습니다. 세 번째 인자에 값을 넘기면 나머지 연산까지 한 번에 처리할 수 있어 암호화 등의 분야에서 유용하게 활용됩니다.

>>> pow(10, 2)
100
>>> pow(10, 2, 7) # (10**2) % 7 과 동일
2

정리

  • math.pow(): 항상 실수(float)를 반환하며, math 모듈 임포트 필요
  • ** 연산자: 정수 입력 시 정수(int) 반환, 가장 일반적으로 사용됨
  • pow() 내장 함수: 모듈 연산(modular exponentiation) 기능 추가 지원

일반적인 경우에는 코드가 간결하고 직관적인 ** 연산자를 사용하는 것이 권장됩니다.