Користећи математику, стандардни Питхон-ов модул за математичке функције, можете израчунати експоненцијалне и логаритамске функције (природни логаритам, обичан логаритам и бинарни логаритам).
Овде је објашњено следеће, заједно са примером кода.
- База природног логаритма (Напиер број):
math.e
- Снага::
**
оператер,pow()
,math.pow()
- Квадратни корен (корен):
math.sqrt()
- Експоненцијална функција (природна експоненцијална функција):
math.exp()
- логаритамска функција:
math.log()
,math.log10()
,math.log2()
База природног логаритма (Напиер број):math.e
Основа природног логаритма (Напијеров број) је дата као константа у математичком модулу, означена са матх.е.
import math
print(math.e)
# 2.718281828459045
Снага: ** оператор, пов(), матх.пов():**оператер,pow(),math.pow()
За израчунавање моћи користите или ** оператор, уграђену функцију пов() или матх.пов().
И-квадрат од к се добија на следећи начин
x**y
pow(x, y)
math.pow(x, y)
print(2**4)
# 16
print(pow(2, 4))
# 16
print(math.pow(2, 4))
# 16.0
матх.пов() претвара аргумент у тип са помичним зарезом. С друге стране, Питхон-ова уграђена функција пов() користи __пов()__ дефинисан за сваки тип.
На пример, пов() дозвољава да се сложени типови наведу као аргументи, али матх.пов() не може да конвертује сложене типове у типове са плутајућим, што доводи до грешке.
print(pow(1 + 1j, 2))
# 2j
# print(math.pow(1 + 1j, 2))
# TypeError: can't convert complex to float
Питхон уграђена функција пов() такође дозвољава трећи аргумент, пов(к, и, з), који враћа остатак (остатак) з у и-потенцију к. То је исти прорачун као пов(к, и) % з, али пов(к, и, з) је ефикаснији.
print(pow(2, 4, 5))
# 1
Квадратни корен (корен):math.sqrt()
Квадратни корен (корен) се може подесити на **0,5 помоћу ** или матх.скрт().
print(2**0.5)
# 1.4142135623730951
print(math.sqrt(2))
# 1.4142135623730951
print(2**0.5 == math.sqrt(2))
# True
Као и матх.пов(), матх.скрт() конвертује аргументе у типове са покретним зарезом за обраду, тако да ће навођење типа који се не може конвертовати у тип са плутајућим бројем резултирати грешком типа.
print((-3 + 4j)**0.5)
# (1.0000000000000002+2j)
# print(math.sqrt(-3 + 4j))
# TypeError: can't convert complex to float
Такође, матх.скрт() не може обрадити негативне вредности, што доводи до ВалуеЕррор.
print((-1)**0.5)
# (6.123233995736766e-17+1j)
# print(math.sqrt(-1))
# ValueError: math domain error
Имајте на уму да када се ради о комплексним бројевима, пример који користи ** оператор показује грешку, али цматх модул даје тачнију вредност. Негативне вредности се такође могу руковати.
import cmath
print(cmath.sqrt(-3 + 4j))
# (1+2j)
print(cmath.sqrt(-1))
# 1j
Експоненцијална функција (природна експоненцијална функција):math.exp()
Да бисте израчунали снагу основе природног логаритма (Напијеров број) е, користите матх.екп().
матх.екп(к) враћа к на квадрат од е.
матх.екп(к) није еквивалентно „матх.е ** к“ и матх.екп(к) је тачније.
print(math.exp(2))
# 7.38905609893065
print(math.exp(2) == math.e**2)
# False
логаритамска функција:math.log(),math.log10(),math.log2()
Да бисте израчунали логаритамску функцију, користите матх.лог(),матх.лог10(),матх.лог2().
матх.лог(к, и) враћа логаритам од к са и као основом.
print(math.log(25, 5))
# 2.0
Ако је други аргумент изостављен, природни логаритам је приказан испод.
логаритам
У математици, природни логаритам (логаритам са Напиеровим бројем е као основом), представљен лог или лн, може се израчунати помоћу матх.лог(к).
print(math.log(math.e))
# 1.0
логаритам (основа 10)
Обичан логаритам (логаритам са базом 10) може се израчунати помоћу матх.лог10(к), што је тачније од матх.лог(к, 10).
print(math.log10(100000))
# 5.0
бинарни логаритам
Бинарни логаритам (логаритам са базом 2) може се израчунати помоћу матх.лог2(к), што је тачније од матх.лог(к, 2).
print(math.log2(1024))
# 10.0