• Python的math模块


    ceil(x)

    返回整数

    >>> math.ceil(-1.273)
    -1
    >>> math.ceil(1.33)
    2
    

    copysign(x,y)

    把y的符号给x,y可以是0

    >>> math.copysign(12, -0.0)
    -12.0
    >>> math.copysign(-27, 29)
    27.0
    

    fabs(x)

    返回绝对值

    >>> math.fabs(-12)
    12.0
    >>> math.fabs(12)
    12.0
    

    factorial(x)

    返回阶乘的数

    >>> math.factorial(3)
    6
    >>> math.factorial(4)
    24
    

    floor(x)

    取整数

    >>> math.floor(1.23)
    1
    >>> math.floor(1.6)
    1
    

    fmod(x,y)

    返回余数

    >>> math.fmod(12,3)
    0.0
    >>> math.fmod(2,3)
    2.0
    

    frexp(x)

    返回一个(m,e)的元组,其中x=m*2**e,0.5<=abs(m)<1

    >>> math.frexp(5)
    (0.625, 3)
    >>> math.frexp(124)
    (0.96875, 7)
    

    fsum(iterable)

    对迭代器里面的所有元素进行求和

    >>> math.fsum([1.2, 3.4, 2.5])
    7.1
    >>> math.fsum((i for i in range(10)))
    45.0
    

    gcd(x,y)

    求x和y的最大公约数

    >>> math.gcd(15,10)
    5
    >>> math.gcd(100,25)
    25
    

    isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0)

    判断x和y的值是否相近,rel_tol是最大绝对值,abs_tol是最小绝对值

    >>> math.isclose(12, 12.3, rel_tol = 2, abs_tol = 1)
    True
    >>> math.isclose(1, 2.3, rel_tol = 3, abs_tol = 1)
    True
    

    isfinite(x)

    判断是否为无穷大或负无穷大,如果不是则返回True

    >>> math.isfinite(3)
    True
    

    isinf(x)

    判断是否为无穷大或负无穷大,如果是则返回True

    >>> math.isinf(2)
    False
    

    isnan(x)

    如果不是数字,返回True;如果是数字,返回False

    >>> math.isnan(2)
    False
    

    ldexp(x,i)

    返回x*(2**i)

    >>> math.ldexp(2,1)
    4.0
    >>> math.ldexp(3,3)
    24.0
    

    modf(x)

    返回一个(a,b)的元组,a是x的小数部分,b是x的整数部分

    >>> math.modf(2.13)
    (0.1299999999999999, 2.0)
    >>> math.modf(3)
    (0.0, 3.0)
    >>> math.modf(1.2)
    (0.19999999999999996, 1.0)
    

    trunc(x)

    返回整数部分

    >>> math.trunc(1.23)
    1
    >>> math.trunc(0.123)
    0
    

    exp(x)

    相当于math.e**x,不过更加精确

    >>> math.exp(2)
    7.38905609893065
    >>> math.exp(1)
    2.718281828459045
    

    expml(x)

    相当于exp(x)-1,不过更加精确

    >>> math.exp(1e-5)-1
    1.0000050000069649e-05
    >>> math.expm1(1e-5)
    1.0000050000166667e-05
    

    log(x[, base])

    取对数,base默认是常数e

    >>> math.log(4, 2)
    2.0
    >>> math.log(math.e)
    1.0
    

    loglp(x)

    取以math.e为底x+1的对数

    >>> math.log1p(math.e-1)  ##其中是数字"1",不是字母"l"
    1.0
    

    log2(x)

    相当于log(x,2)不过更加精确

    >>> math.log2(3)
    1.584962500721156
    >>> math.log(3,2)
    1.5849625007211563
    

    log10(x)

    相当于log(x,2)不过更加精确

    >>> math.log10(10)
    1.0
    >>> math.log10(100)
    2.0
    

    pow(x,y)

    返回x的y次幂

    >>> math.pow(2, 4)
    16.0
    

    sqrt(x)

    开平方根

    >>> math.sqrt(4)
    2.0
    >>> math.sqrt(16)
    4.0
    

    acos(x)

    反cos函数

    >>> math.acos(0.5)
    1.0471975511965979
    >>> math.pi/3
    1.0471975511965976
    

    asin(x)

    反sin函数

    >>> math.asin(0.5)
    0.5235987755982989
    >>> math.pi/6
    0.5235987755982988
    

    atan(x)

    反tan函数

    >>> math.atan(1)
    0.7853981633974483
    >>> math.pi/4
    0.7853981633974483
    

    atan2(y,x)

    矢量(x,y)与x的夹角,即tan(y/x)的大小

    >>> math.atan2(1,1)
    0.7853981633974483
    >>> math.pi/4
    0.7853981633974483
    

    cos(x)

    >>> math.cos(0)
    1.0
    >>> math.cos(math.pi/3)
    0.5000000000000001
    

    hypot(x,y)

    (x,y)到原点的距离

    >>> math.hypot(3,4)
    5.0
    >>> math.hypot(5,12)
    13.0
    

    sin(x)

    >>> math.sin(math.pi/2)
    1.0
    >>> math.sin(math.pi/6)
    0.49999999999999994
    

    tan(x)

    >>> math.tan(0)
    0.0
    >>> math.tan(math.pi/4)
    0.9999999999999999
    

    degrees(x)

    把弧度转换为角度

    >>> math.degrees(math.pi/2)
    90.0
    >>> math.degrees(math.pi/3)
    59.99999999999999
    

    radians(x)

    把角度转换为弧度

    >>> math.radians(90)
    1.5707963267948966
    >>> math.radians(30)
    0.5235987755982988
    

    三角函数双曲线

    acosh(x)
    asinh(x)
    atanh(x)
    cosh(x)
    sinh(x)
    tanh(x
    

    erf(x)

    [varPhi left( x ight) =frac{1}{sqrt{2pi}}int_{-infty}^x{e^{frac{-t^2}{2}}}dt ]

    >>> math.erf(100)
    1.0
    >>> math.erf(100000)
    1.0
    >>> math.erf(0.123)
    0.1380938816903886
    

    erfc(x)

    等同于1.0-erf(x)

    >>> math.erf(0.5)
    0.5204998778130465
    >>> math.erfc(0.5)
    0.4795001221869534
    >>> math.erf(0.5)+math.erfc(0.5)
    1.0
    

    gamma(x)

    [varGamma left( x ight) =int_0^{+infty}{t^{x-1}e^{-t}dt} ]

    >>> math.gamma(100)
    9.332621544394415e+155
    >>> math.gamma(45)
    2.658271574788449e+54
    

    lgamma(x)

    gamma函数的以常数e为底对数

    >>> math.lgamma(100)
    359.1342053695754
    >>> math.lgamma(666)
    3661.5273394029496
    

    pi

    e

    tau

    等同于2*pi

    inf

    无穷大

    nan

    等同于“not a number”

  • 相关阅读:
    性能分析
    thymeleaf和spring的整合
    Java中二叉树的建立
    面试题
    (转)structs2的相关配置问题
    ==与equal()的区别
    java的基本类型和其包装类
    Ajax调用返回json数组,对象 (JSONArray.fromObject)
    (转)在JSP中调用JAVA类和使用JavaBean有什么区别?
    用log4j查看详细错误信息
  • 原文地址:https://www.cnblogs.com/MingleYuan/p/10628503.html
Copyright © 2020-2023  润新知