Python math library 정리

달래·2023년 9월 7일

python

목록 보기
1/1
post-thumbnail

출처는 여기

먼저

import math

를 해주고 시작한다.

내림, 올림, 반올림

내림 : floor, trunc

  • floor
#무조건 아래로 향하는 floor
math.floor(3.4) #3
math.floor(-3.4) #-4
  • trunc
#0으로 가까이 가는 trunc
math.trunc(3.4) #3
math.trunc(-3.4) #-3

올림 : ceil

math.ceil(3.4) #4

그럼 반올림은
python에 내장된 round() 함수를 사용한다.

round(3.4) #3

참고로, round는 사사오입 원칙을 따른다.
반올림할 자리의 수가 5이면,
반올림 할 때 앞자리의 숫자가 짝수 -> 내림 / 홀수 -> 올림한다.

round(4.5) #4(앞의 자리인 4가 짝수여서 내림)
round(3.5) #4(앞의 자리인 3이 홀수여서 올림)

로그 함수와 제곱

로그 값 리턴 : log

math.log(a, b)는 b를 밑으로 하는 log a에 대한 로그 값을 리턴한다.

math.log(10, 10)    #1

e를 밑으로 하는 x+1로그

math.log2(x)

2를 밑으로 하는 x+1로그

math.log10()

10를 밑으로 하는 x+1로그

math.pow(3, 2)  #9

x에 y승을 계산한 결괏값 반환

math.pow(x, y)는 x에 y승을 계산한 결과값을 반환한다.

math.sqrt(25)   #5.0

삼각함수

math.acos(x)    #아크코사인
math.asin(x)    #아크사인
math.atan(x)    #아크탄젠트
math.atan2(y, x)    #y/x 아크탄젠트
math.cos(x) #코사인
math.sin(x) #사인
math.tan(x) #탄젠트

각도 변환

라디안 > 60분법 각도 : degrees

라디안으로 표현된 각도를 60분법 각도로 변환

math.degrees(x)

60분법 각도 > 라디안 : radians

60분법으로 표현된 각도를 라디안 각도로 변환

math.radians(x)

상수

math.pi ##결과는 3.141592653589793이다. 원주율
math.e  ##결과는 2.718281828459045이다. 자연 상수
math.tau    ##결과는 6.283185307179586이다. 타우

그 외

부호 적용 : copysign

두 번째 인자의 부호만 취해서 첫 번째 인자에 적용한다.

math.copysigh(3.4, -1) #-3.4

절댓값 반환 : fabs

수의 절댓값을 반환해 준다.

math.fabs(-3.4) #3.4

팩토리얼 값 반환 : factorial

1부터 인자로 주어진 값까지 모두 곱한, 팩토리얼 값을 반환해 준다.

math.factorial(5) #120(1*2*3*4*5)

최대 공약수 반환 : gcd

두 수를 인자로 받아서, 두 수의 최대 공약수를 반환한다.

math.gcd(6, 8) #2

정수와 소수 분리 : modf

입력값을 정수와 소수 부분으로 분리해 반환한다. 부동소수점의 값을 그대로 반환한다는 특징이 있다.

math.modf(3.14) #(0.14000000000000012, 3.0)

m*2**e : frexp, ldexp

입력받은 값이 m * 2**e와 같은 값을 가지는 m과 e를 반환한다. 예를 들어 100을 인자로 넣으면 (0.78125, 7)을 반환하는데 이를 다음과 같이 계산해보면 정확히 100이 나온다.
ldexp는 그 반대로, m2*e에 각각 대입되어 계산되어 값을 반환받는다. m이 첫 번째 인자이고 e가 두 번째 인자이다.

math.frexp(100) #(0.78125, 7)
math.ldexp(0.78125, 7)  #100

0개의 댓글