Python 강좌 : 제 7강 - 수학 모듈

Python import math

Python 강좌 : 제 7강 - 수학 모듈
[ Python ] - 윤대희

수학 모듈


Python에서는 수학 모듈을 이용하여 C/C++ 에서 while, for 등을 이용하여 구현해야 했던 함수들이 기본적으로 구현되어 있습니다.

수학 모듈을 사용한다면, 별도의 함수를 구성하지 않아도 수학적인 계산을 쉽게 해결할 수 있습니다.


import math

상단에 import math를 사용하여 수학 모듈을 포함시킵니다. 수학 함수의 사용방법은 math.*을 이용하여 사용이 가능합니다.


from math import *

위와 같이 import시킬 시 수학 함수를 사용할 때 math.를 입력하지 않아도 사용이 가능합니다.

* 대신 함수를 직접 적는다면 해당 함수만 사용이 가능합니다.


from math import pow

print(pow(3, 2))
print(sqrt(3))

pow()는 정상 출력이 되지만 sqrt()는 포함시키지 않아 에러가 발생합니다.



표현 함수


연산 의미
ceil(x) 올림
floor(x) 내림
trunc(x) 절사



삼각 함수


연산 의미
cos(x) 코사인
sin(x) 사인
tan(x) 탄젠트
acos(x) 아크코사인
asin(x) 아크사인
atan(x) 아크탄젠트
atan2(x, y) x/y 아크탄젠트
  • Tip : 라디안값으로 반환합니다.



하이퍼볼릭 함수


연산 의미
cosh(x) 하이퍼볼릭 코사인
sinh(x) 하이퍼볼릭 사인
tanh(x) 하이퍼볼릭 탄젠트
acosh(x) 하이퍼볼릭 아크코사인
asinh(x) 하이퍼볼릭 아크사인
atanh(x) 하이퍼볼릭 아크탄젠트
  • Tip : 라디안값으로 반환합니다.



각도 변환


연산 의미
degrees(x) 60분법으로 변환
radians(x) 호도법으로 변환



논리 함수


연산 의미
isclose(x, y, rel_tol=z) x와 y가 (z*1e+02)% 내외로 가까우면 True, 아니면 False
isinf(x) x가 inf이면 True, 아니면 False
isfinite(x) x가 inf, nan이면 False, 아니면 True
isnan(x) x가 nan이면 True, 아니면 False
  • Tip : isclose(x, y, rel_tol=z) 에서 rel_tol=z를 미입력시 기본값은 1e-09로 계산합니다. 두 값의 차이가 5% 이내라면 z=0.05를 사용합니다.



로그 함수


연산 의미
log(x, y) y를 밑으로 하는 x 로그
log10(x) 10을 밑으로 하는 x로그
log1p(x) e를 밑으로 하는 x+1로그
log2(x) 2를 밑으로 하는 x로그
  • Tip : log(x, y)에서 y를 미입력 시 밑을 e로 사용하여 자연로그로 이용합니다.



연산 함수


연산 의미
pow(x, y) x의 y승
sqrt(x) 루트 x
erf(x) 오차함수
      erfc(x)               여오차함수        
exp(x) e의 x승
expm1 e의 x-1승
frexp(x) x를 (가수부, 지수부)로 반환
ldexp(x, y) x*(2^y)
gamma(x) 감마함수
lgamma(x) 감마함수의 자연로그
factorial(x) 팩토리얼
fsum([x, y, z, …]) 리스트의 합
fmod(x, y) x를 y로 나눈 나머지
fabs(x) 절대값
gcd(x, y) x와 y의 최대공약수
hypot(x, y) 유클리드 놈을 반환
modf(x) x를 (소수부, 정수부)로 반환
copysign(x, y) y의 부호를 사용하는 x를 반환



상수


연산 의미
e e
pi π
tau τ
inf
nan Not a Number



함수 수식


erf(x) : 오차함수

$$ erf(x) = {2\over \sqrt\pi}\int_0^x e^{-t^2} dt $$


erfc(x) : 여오차함수

$$ erfc(x) = 1-erf(x) = {2\over \sqrt\pi}\int_x^\infty e^{-t^2} dt $$


frexp(x) : (가수부, 지수부) 반환

$$ frexp(x) = {가수부} \times 2^{지수부} $$


gamma(x) : 감마함수

$$ gamma(x) = \int_0^\infty {t^{x-1}} {e^{-t}} dt $$


hypot(x, y) : 유클리드 노름

$$ hypot(x, y) = {\sqrt{x^2 + y^2}} $$




Book Image

개정판이 출간됐습니다!

C#과 파이썬을 활용한 OpenCV 4 프로그래밍 (개정판)

컴퓨터 비전 기초 이론부터 머신러닝을 활용한 영상 처리 프로젝트까지

  • C#과 파이썬용 OpenCV의 데이터 형식과 행렬 및 배열 연산
  • 이미지/동영상/카메라를 활용한 입출력과 결과 저장
  • 전처리 과정과 정보를 탐색하기 위한 이미지 변형
  • 유의미한 정보를 검출하기 위한 이미지 변환
  • 이미지에서 정보를 검출 및 인식
  • 객체 검출을 포함한 모션 추적
  • K-means, KNN, SVM 등의 머신러닝 알고리즘 적용 방법
  • 카페(Caffe), 다크넷(Darknet), 텐서플로 모델을 활용한 딥러닝 모듈 적용 방법
  • Tesseract-OCR과 C# OpenCvSharp4를 활용한 프로젝트
  • 텐서플로와 Python OpenCV4를 활용한 프로젝트
  • 윤대희 저 | 위키북스

    [yes24 바로가기] [알라딘 바로가기] [교보문고 바로가기]

    후원하기


    ⤧  Previous post Python 강좌 : 제 6강 - 비트 연산 ⤧  Next post Python 강좌 : 제 8강 - List 기초 연산 (1)
    Python Category