新大榭论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

《新大榭》- 创大榭地方网络社区先锋品牌 新大榭始终专注于地方网络社区平台的建设 关于我们- [大记事]- 留言建议- [新手报道]

发布 .新大榭软件管家(Excel版) V6.0版 财务/仓库/生产/销售/采购/行政/人事/校园 .公告 - 客户 - 打赏 - 职场 - Excel - Python.

新大榭镜像-音乐-法律-图书-高中课堂-实验 广告是为了能更好的发展 [欢迎商家支持本站互利共赢] 广告位招租.首页黄金广告位等您来!联系 13566035181

新大榭论坛 门户 查看主题

7442 - Python库 AP085【math】数学模块常用方法

发布者: admin | 发布时间: 2021-7-24 10:21| 查看数: 2033| 评论数: 0|帖子模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转新大榭论坛!

您需要 登录 才可以下载或查看,没有账号?注册

x
) |: ^2 n0 r5 _; S
【注意】在使用之前,必须先导入math模块,以开方函数 sqrt 为例,介绍2种引入方式及各自使用方法。9 Y/ u7 O- ~( ]; H7 W

% H; w. z; E9 R$ S" F" Z) b+ e8 {方法1
/ b, c8 p7 J1 H+ ~# D2 G
  1. >>> import math
    # |8 Q  ^; `) W+ e
  2. >>> math.sqrt(9)" ]- R+ J- {* N! k5 T0 i- ~' x
  3. 3.0
复制代码
方法23 D+ N5 p7 Z4 k. [2 ^
  1. >>> from math import sqrt' s# S! P+ f$ T5 O7 m- U6 S! _; j2 P
  2. >>> sqrt(9)
    5 M- Y/ ]- [/ V! U% J7 X, M
  3. 3.0
复制代码

# T+ d. Z: Y1 N6 Y: O1 h

7 l  e, x, Z# m1 Z6 K4 a
math.e  表示一个常量
! T* U" m; h9 P$ b1 S' X! t
  1. #表示一个常量
    8 t5 J' A$ {+ N) r* G7 U" U
  2. >>> math.e
    . ~2 \6 a$ w1 E, N; ?6 x; S% K- w
  3. 2.718281828459045
复制代码
4 B1 Y! I. m( L( k6 ?
math.pi  
数字常量,圆周率

, j& t* e9 |3 a' J# y3 r6 n
  1. #数字常量,圆周率% B1 K8 U2 n/ k# V
  2. >>> print(math.pi)
    & [6 B+ S2 @% E0 a
  3. 3.141592653589793
复制代码

. W+ ?  M+ C/ amath.ceil(x)  
取大于等于x的最小的整数值,如果x是一个整数,则返回x
, f) @; A4 P, k3 H* ]
  1. #取大于等于x的最小的整数值,如果x是一个整数,则返回x3 {3 o. b# T+ k1 `$ I) p% O
  2. ceil(x)
    . F1 M( e! |$ a3 ~+ b' Z( @
  3. Return the ceiling of x as an int.
    - F, h" ]" z% Q1 A- }0 S6 u8 w/ U
  4. This is the smallest integral value >= x.
    ) h, p. E* i( \5 K

  5. 5 t3 v: D2 P- `9 o! g6 ^
  6. >>> math.ceil(4.01)
    ) g. H) D$ j  |$ q' `; q4 D
  7. 55 r. a- G* F- L5 @
  8. >>> math.ceil(4.99)
    ! ?8 n& L& n4 u2 k4 g! M
  9. 5& \; x8 b$ `2 j+ ^5 N1 n
  10. >>> math.ceil(-3.99)
      S7 j( I( O9 |1 e2 U" T
  11. -3
    4 X7 U8 E# c8 c2 o8 J" j* U
  12. >>> math.ceil(-3.01)
    2 g  p3 r  ^" o. \5 b) M
  13. -3
复制代码
5 l+ O3 B: a+ Z5 M
math.floor(x)  取小于等于x的最大的整数值,如果x是一个整数,则返回自身. n5 j+ r, v6 n$ x0 B1 k
  1. #取小于等于x的最大的整数值,如果x是一个整数,则返回自身
    % u* K3 x9 d8 W
  2. floor(x)& J7 y: C  E- D9 h; m
  3. Return the floor of x as an int.4 R6 l' k% \7 W; v
  4. This is the largest integral value <= x.: W7 S8 \$ W6 C6 ]( A
  5. >>> math.floor(4.1): j3 I2 M$ H: x' t! V
  6. 4
    ! J+ k: l6 w- \% k6 W
  7. >>> math.floor(4.999)% `0 u9 V9 e- ^- r' L. B
  8. 45 g3 h, M% s6 T8 ?3 r, C9 g
  9. >>> math.floor(-4.999)  L; H1 a6 F4 U5 Z* F; J4 i$ W% B
  10. -5
    7 y6 V0 ?4 U* X, V8 b, x% Z1 A9 t
  11. >>> math.floor(-4.01)
    " E$ B! H) G  S/ S' v
  12. -5
复制代码
* O6 }& \% A% Y( q! O0 T6 c( \
math.pow(x,y)  返回x的y次方,即x**y
, w! ^/ [: n" m
  1. #返回x的y次方,即x**y: S1 a7 h8 \; i  U6 A0 ], ~# R
  2. pow(x, y)# ]9 w# P* P- x) D
  3. Return x**y (x to the power of y).
    7 X2 Z/ L' F. V  b6 s+ Y
  4. >>> math.pow(3,4)
    6 v/ [2 T6 G* w1 t; W9 W
  5. 81.0! ?" w# V' U% j8 }4 Z, V3 N
  6. >>>
    3 m& X  K7 x$ F: w
  7. >>> math.pow(2,7)
    ) o) v: i/ N' g7 D/ K5 R! Q
  8. 128.0
复制代码

9 J; {8 p8 v* bmath.log(x)  返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base)
" S% H* d' l+ }
  1. #返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base)
    , q0 R( l/ e0 x' {1 v8 C- n/ b' g3 r  h* O
  2. log(x[, base])" ]) x7 O, e% z3 O5 s7 ]! }) l
  3. Return the logarithm of x to the given base.
    2 z& y+ Y: |) [
  4. If the base not specified, returns the natural logarithm (base e) of x.8 H- |/ A9 R6 [
  5. >>> math.log(10)
    , L! b! ?' r; {, B* V
  6. 2.302585092994046
    + w' _2 ~$ X7 d) l+ Y
  7. >>> math.log(11)
    6 F1 l" V1 x% P; M) F( z
  8. 2.3978952727983707) s+ l) a% H+ i# c7 E8 s0 E
  9. >>> math.log(20)
    ) @; ?! F) Z0 X! Z/ k' G* U3 j
  10. 2.995732273553991
复制代码

7 x2 L: g2 q5 H% J' t) }* i2 }math.sin(x)  求x(x为弧度)的正弦值3 G4 s# G# O* W& Q0 c3 Q
  1. #求x(x为弧度)的正弦值
    # K- f5 S  y4 q; r  y
  2. sin(x)
    8 X+ x! e  J' U  z2 d
  3. Return the sine of x (measured in radians).
    : I( G! H  j( H8 i- B
  4. >>> math.sin(math.pi/4)
    2 b. e: ?1 D& W" }4 |% n
  5. 0.7071067811865475
    ( F* F2 N. ]+ L0 ]. s
  6. >>> math.sin(math.pi/2)
    , C' E7 ~1 E. W0 O8 X+ }/ g+ y2 n
  7. 1.0, O" h$ M! d- {% t2 J2 Z
  8. >>> math.sin(math.pi/3)
    ( m8 d# r0 }7 x" ?  ^
  9. 0.8660254037844386
复制代码

+ ?7 r: |/ {# x, {3 smath.cos(x)  求x的余弦,x必须是弧度3 s6 t! L3 ?; x5 Z4 m! a
  1. #求x的余弦,x必须是弧度
    * E( B9 v8 h0 o" w( L+ ^" I
  2. cos(x)
      W) w. g# v, R: [) L  m  n* ?, @
  3. Return the cosine of x (measured in radians).0 r9 z. t8 P% w4 X" v
  4. #math.pi/4表示弧度,转换成角度为45度( E! U9 @+ T( H2 ]9 k
  5. >>> math.cos(math.pi/4)
    8 H/ A- @  u4 }: M* J% \9 b
  6. 0.70710678118654764 e# u: `; [% ]; C
  7. math.pi/3表示弧度,转换成角度为60度
    7 u8 Q8 c4 K6 b1 Q  [# V! W
  8. >>> math.cos(math.pi/3)
    / y) R; t5 S) f$ J
  9. 0.50000000000000014 t0 L0 p8 k% g( G& `
  10. math.pi/6表示弧度,转换成角度为30度
    ! z2 w9 ^' t3 u1 x& o) F6 Y
  11. >>> math.cos(math.pi/6)
    - \* n3 _7 {6 L1 y; d7 E# D, ^
  12. 0.8660254037844387
复制代码
0 U" l0 z' B% n0 O% M$ E
math.tan(x)  返回x(x为弧度)的正切值
3 [( t8 U  @  F1 b
  1. #返回x(x为弧度)的正切值5 G% Y6 x' k7 T: ]( v9 p1 z
  2. tan(x)3 Q8 u; b  B6 g4 s9 K! J
  3. Return the tangent of x (measured in radians).- X, k- S9 g7 f- b
  4. >>> math.tan(math.pi/4)
    2 c9 f! n; x% l# k6 I- [  C
  5. 0.9999999999999999
    & c, E% \. c5 j
  6. >>> math.tan(math.pi/6)
    5 p( _3 w8 Y) a/ q
  7. 0.5773502691896257
    / ?! D5 |, r, j3 V5 F  v0 E4 |6 q
  8. >>> math.tan(math.pi/3); o  W3 r" Q- J  T
  9. 1.7320508075688767
复制代码

1 Z) G5 g) [' z. Mmath.degrees(x)  把x从弧度转换成角度
+ n5 m; k: I) w
  1. #把x从弧度转换成角度
    % K8 D4 W2 Y# |' N; s7 G  C5 x
  2. degrees(x)) P8 `# [! F1 ~* y7 o" P
  3. Convert angle x from radians to degrees.* b" A% p  Z( ^: D6 \& J
  4. ) G0 L2 o% V2 J. h) l6 h
  5. >>> math.degrees(math.pi/4)
    * s7 ?. c: u3 B$ U
  6. 45.01 `) }, Q# i' j( _
  7. >>> math.degrees(math.pi)
    : ?1 b9 `3 i( }+ a- ~
  8. 180.0
    3 V3 c* V( E; S2 y  z3 V
  9. >>> math.degrees(math.pi/6)
      V' H8 W  V! c. Q8 v
  10. 29.999999999999996" s1 Q5 b/ i: Y) R) m  w
  11. >>> math.degrees(math.pi/3)
    0 N% N( `: N! {( k: u% C
  12. 59.99999999999999
复制代码

% t) D* |* b' k  Cmath.radians(x)  把角度x转换成弧度6 t# R4 g$ Z( S) B9 e. T7 u; I
  1. #把角度x转换成弧度
    % K, H' E/ p9 e% d1 w' v! h; P
  2. radians(x)
    9 c2 z' k/ n% @
  3. Convert angle x from degrees to radians.- q# J( g- D4 x, F+ p" n# r
  4. >>> math.radians(45)
    % `5 H- o% m0 V+ x
  5. 0.7853981633974483
    + i, Q2 }5 e3 j5 @
  6. >>> math.radians(60)
    ( b+ ^- u6 `2 @) {2 B
  7. 1.0471975511965976
复制代码

6 i$ G% ?  f$ z+ b+ l" Amath.copysign(x,y)  把y的正负号加到x前面,可以使用0
8 ^% k2 ]: q. o) _7 |; R2 F9 X
  1. #把y的正负号加到x前面,可以使用0" e3 T8 j3 v9 b4 P1 q  }( \
  2. copysign(x, y)2 y* |- N" a( O- D# f" ?) I
  3. Return a float with the magnitude (absolute value) of x but the sign
    1 k' r" e. a1 e& |$ u( c: F  P
  4. of y. On platforms that support signed zeros, copysign(1.0, -0.0)
    ; }) S( D+ `+ Y- L# X  i
  5. returns -1.0.! B3 L0 p/ g: v4 f" X4 g

  6. 7 u0 ^0 P" T: a2 u" D+ m. M
  7. >>> math.copysign(2,3)
    9 |' H1 E$ d, N# ], d  @
  8. 2.0
    * W% }; o8 V3 w/ Q
  9. >>> math.copysign(2,-3)$ ?9 \: C" ~. F# a$ g
  10. -2.0# j& l" m. M( L. E! x
  11. >>> math.copysign(3,8)
    2 }' @0 I, p; Y# e, R% `3 G
  12. 3.0
    - |; q2 z/ ^' k7 |5 R
  13. >>> math.copysign(3,-8)
    / i- H: r& z5 ]5 V; y6 ]% z6 d
  14. -3.0
复制代码
# @1 H% a+ w2 l3 s* h, n5 {
math.exp(x)  返回math.e,也就是2.71828的x次方
1 w( |1 v( N; U3 }
  1. #返回math.e,也就是2.71828的x次方
      I' z4 B" S& R" k/ C' p: l- d; i+ ?
  2. exp(x)( _# V; L! r$ [& ~- ]
  3. Return e raised to the power of x.
    ! b9 K9 H2 o! J7 t4 k
  4. ) [1 w+ G1 x9 o) k$ w+ ^/ ]2 V
  5. >>> math.exp(1)
    : i! T0 I/ i( c& |( ~6 ]
  6. 2.718281828459045/ v7 o+ l3 p$ n
  7. >>> math.exp(2)$ X: }: Y  \$ d$ y9 b
  8. 7.38905609893065! t/ y6 N( @! T8 p3 U/ k0 O: K
  9. >>> math.exp(3); z$ i# M: N8 \0 g$ i
  10. 20.085536923187668
复制代码
' y" x7 l. O- V. {* M
math.expm1(x)  返回math.e的x(其值为2.71828)次方的值减1
4 r( M0 R: W4 v: P, k* c6 S' y
  1. #返回math.e的x(其值为2.71828)次方的值减1
    , o6 S) o. X* W
  2. expm1(x)9 H$ W% m6 U2 o3 D4 e
  3. Return exp(x)-1.4 H8 o5 `$ o  f6 m  K/ n* [9 t
  4. This function avoids the loss of precision involved in the direct evaluation of exp(x)-1 for small x.
    * \9 s' c, Q: X" T

  5. * s& e* ^* ]6 _( J5 C* J& X
  6. >>> math.expm1(1)' W0 Z$ \/ N8 ~
  7. 1.718281828459045
    0 E3 ?. `6 J& H( K1 W8 H$ i
  8. >>> math.expm1(2)0 Y4 D& D2 ?& l: w: u9 z0 A9 T
  9. 6.38905609893065
    + r  {. [1 S" h# F( y
  10. >>> math.expm1(3)
    4 `# b( s. A# c* ?) |
  11. 19.085536923187668
复制代码

# u, g. ?# X8 z& A/ l, I* Z" xmath.fabs(x)  返回x的绝对值
+ H3 L9 F1 V2 u% a0 D
  1. #返回x的绝对值
    9 @# A) C  p0 G" y0 u
  2. fabs(x)/ X% r! ~( ^* `$ p) x# u+ ^
  3. Return the absolute value of the float x.
    & {6 T" M: G4 A" D$ y

  4. ' M- C. A& w7 M! V6 B
  5. >>> math.fabs(-0.003)
    # A& G' w: ~/ P, z% e  u+ \, I: [
  6. 0.003
    7 r' T* I+ p3 ~2 U- S0 h
  7. >>> math.fabs(-110)% c. N2 h4 u, f& f2 d
  8. 110.0
    , R; S: s$ ]4 u2 x
  9. >>> math.fabs(100)6 r3 m" p0 z$ |( F4 e. c
  10. 100.0
复制代码
. {/ U7 Y" t" o4 j$ r8 a2 r+ q1 Q
math.factorial(x)  取x的阶乘的值( @  @0 I- r$ P
  1. #取x的阶乘的值
    + k1 y2 `1 u) |, U
  2. factorial(x) -> Integral
    " Y6 `% p' E0 K
  3. Find x!. Raise a ValueError if x is negative or non-integral.
    ! L5 n7 c* R4 r' X) l
  4. >>> math.factorial(1)
    3 L# Z! s3 k0 X: H7 R' A) D
  5. 1, v' d$ Y! R+ t
  6. >>> math.factorial(2)
    9 O) h7 b. r( _/ ~
  7. 2
    ( r- I7 N* o0 x' l, i
  8. >>> math.factorial(3)
    & P$ a! T. i# l) x# o5 {
  9. 6/ S# s; O, u. d4 [9 ^7 A
  10. >>> math.factorial(5)* K1 g/ \; F0 k6 _! R9 @
  11. 1208 K* A: p) ]6 I3 N1 Y; a0 l# }
  12. >>> math.factorial(10)) _0 K' e) x% I7 W( a& s: G2 X
  13. 3628800
复制代码

) f/ \7 T5 z! v0 l" Xmath.fmod(x,y)  得到x/y的余数,其值是一个浮点数" Y% O" ^# c( H: u* n& B, [
  1. #得到x/y的余数,其值是一个浮点数9 I$ i, W- S, k, ^, F
  2. fmod(x, y)
    ( f2 N3 ?8 H0 ?) |
  3. Return fmod(x, y), according to platform C.  x % y may differ.
    7 g4 M, W1 H, T+ @7 P/ q7 j
  4. >>> math.fmod(20,3)8 \5 B. [( \! s4 c1 |; V( h
  5. 2.0
    $ I0 F+ H5 W0 h
  6. >>> math.fmod(20,7)
    & ?* u1 s1 t) b7 @8 L6 P# i
  7. 6.0
复制代码
' X7 @/ N% K  v% A& y* T
math.frexp(x)  返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围
5 H" T0 h* V2 ~4 ~  X
  1. #返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围,  X. k8 m5 L( G% ~
  2. #2**e的值在这个范围内,e取符合要求的最大整数值,然后x/(2**e),得到m的值& s% U  H- x- }0 z1 K0 |& e
  3. #如果x等于0,则m和e的值都为0,m的绝对值的范围为(0.5,1)之间,不包括0.5和19 B9 }8 y3 {& S% Z
  4. frexp(x)& m3 ?2 M0 ?1 r% m
  5. Return the mantissa and exponent of x, as pair (m, e).
    $ S8 s0 T$ ^! Y" |  Z
  6. m is a float and e is an int, such that x = m * 2.**e.3 H  f7 o1 i. B* L, Z  d
  7. If x is 0, m and e are both 0.  Else 0.5 <= abs(m) < 1.0./ i9 v& j2 T2 {! A
  8. >>> math.frexp(10): {* a/ ?4 ?5 x& W$ A( [' x% B
  9. (0.625, 4)
    . L' a$ B. m1 i
  10. >>> math.frexp(75)' F0 S! j: z0 A9 s8 ?* ?1 `5 j6 s$ @
  11. (0.5859375, 7)$ X- [9 I0 N4 }" j
  12. >>> math.frexp(-40)/ {$ g6 _5 w8 C5 j* Q7 z
  13. (-0.625, 6)
    3 ?$ T9 y8 h) N" z+ o, g/ ?
  14. >>> math.frexp(-100)
    & p/ b- w: |% T/ R% N
  15. (-0.78125, 7)3 }. X$ O- ^; W: |- Y# v
  16. >>> math.frexp(100)8 O7 z% s0 q  ^. F
  17. (0.78125, 7)
复制代码
* L8 b7 g% X$ ^- g
math.fsum(seq)  对迭代器里的每个元素进行求和操作:seq 代表 序列
) e2 E8 T5 s7 V+ V4 n6 f: A
  1. #对迭代器里的每个元素进行求和操作+ N% \0 O3 }6 u4 w$ o  o
  2. fsum(iterable)
    $ {" H9 _, R! z3 n% U1 f  f
  3. Return an accurate floating point sum of values in the iterable." A! F- G0 Y( ]! _. x/ j# {
  4. Assumes IEEE-754 floating point arithmetic.
    3 K3 L# X7 z( ~0 A  C7 B) n) U$ w% n$ q
  5. >>> math.fsum([1,2,3,4])
    * p" o& h6 T0 Q4 L1 K  |
  6. 10.0% u2 W* M( |6 ~& g; s. N" p
  7. >>> math.fsum((1,2,3,4))/ }' z. r6 O) W) ]3 ~( B
  8. 10.0
    " a) W' l0 G) f& q4 P4 v( g
  9. >>> math.fsum((-1,-2,-3,-4))2 Q5 E( r4 O( f! L8 ~. m4 B& |
  10. -10.0
    ' |. u* v4 e1 F5 z& B
  11. >>> math.fsum([-1,-2,-3,-4])
    3 C4 {, z' B5 }
  12. -10.0
复制代码
" s  ?1 {9 a* W) A# U
math.gcd(x,y)  返回x和y的最大公约数
) g5 T9 L' z3 W+ m
  1. #返回x和y的最大公约数( t' r' _! `3 C5 k5 q/ l% g+ k1 h
  2. gcd(x, y) -> int
    $ a* _% M8 z  e3 O5 p4 b* M; Y
  3. greatest common divisor of x and y
    1 V$ n* R3 H$ {! k% e2 c
  4. >>> math.gcd(8,6)
    # r. @* U6 e$ O- t
  5. 2
    + T7 @& j9 g: D; ]+ C
  6. >>> math.gcd(40,20)
    / m! d: K5 f3 a
  7. 201 z. i/ I  {9 O( J  T
  8. >>> math.gcd(8,12)
    ( M( ?! Z( F, [1 O: i
  9. 4
复制代码
$ J7 c" f- a1 [3 _% X
math.hypot(x,y)  如果x是不是无穷大的数字,则返回True,否则返回False
; V" e+ R4 B# J4 H- O, e
  1. #得到(x**2+y**2),平方的值7 P  e. Z, R$ t
  2. hypot(x, y)
    ' b( Z- y4 I6 v1 P) ?+ O
  3. Return the Euclidean distance, sqrt(x*x + y*y).9 @' _( R* @7 ~) c2 O4 c0 l
  4. >>> math.hypot(3,4)
    $ j" ~3 }, A6 n/ W5 a  d
  5. 5.04 a1 @+ i& \" `2 L1 S; w
  6. >>> math.hypot(6,8)
    1 s; u* t5 _+ @9 a% {/ ]
  7. 10.0
复制代码

# _* A! l( k3 I! d# r# T+ B! @math.isfinite()  如果x是正无穷大或负无穷大,则返回True,否则返回False( y( x2 g5 |. |. ]5 v8 d/ {
  1. #如果x是不是无穷大的数字,则返回True,否则返回False3 X9 z& o( O5 \# |; G1 V
  2. isfinite(x) -> bool
    - z( A; K" v7 x) w& F
  3. Return True if x is neither an infinity nor a NaN, and False otherwise.
    & \) ]# s9 l( K0 s& K; E
  4. >>> math.isfinite(100)% v" C3 M0 V1 l# E" V$ o
  5. True) N$ q) a# d. ~3 z) u
  6. >>> math.isfinite(0)
    " m# g8 C! D' @5 ?- _$ f" v: l
  7. True! G1 J; U. c% H1 s
  8. >>> math.isfinite(0.1)6 Z7 B2 a+ q/ ~- U8 |
  9. True
    2 G* i& v' R7 l" Q) r" u2 v3 ~( m
  10. >>> math.isfinite("a")
    ' d# E2 ?% q% G! M# O
  11. >>> math.isfinite(0.0001)
    7 Y1 D+ ^& f# @0 g1 a
  12. True
复制代码

7 P4 B; I. o- Dmath.isinf(x)  如果x是正无穷大或负无穷大,则返回True,否则返回False  k  {+ _2 @4 o8 F' c
  1. #如果x是正无穷大或负无穷大,则返回True,否则返回False
    $ z% V. t# g, T% h' `; C' r3 J
  2. isinf(x) -> bool
    7 \* g1 F& k! o+ E  N
  3. Return True if x is a positive or negative infinity, and False otherwise./ v8 V/ z- b( U$ i( Y, ]& K0 b* H
  4. >>> math.isinf(234)
    7 @* N6 i3 u6 K9 j
  5. False
    ; G5 m, @! X3 H' n3 `  G( O
  6. >>> math.isinf(0.1)* p3 Q  o* H0 k- `, K) S
  7. False
复制代码

5 C5 o1 Q! a" D6 g+ vmath.isnan(x)  如果x不是数字True,否则返回False
3 C& ~0 z; @. t2 P
  1. #如果x不是数字True,否则返回False2 T$ i! a8 i9 j# J
  2. isnan(x) -> bool3 v/ h2 Z1 }2 p" Z# [
  3. Return True if x is a NaN (not a number), and False otherwise.- s' Y# z& K# d- e' H: m9 B6 \
  4. >>> math.isnan(23)' R, K9 W6 _$ h5 [" t
  5. False0 O/ D# O1 E( X& d
  6. >>> math.isnan(0.01)% b9 E' f0 `) X  l# a+ q+ z- S
  7. False
复制代码

$ J8 F5 t, s9 W! [, zmath.ldexp(x,i)  返回x*(2**i)的值, q! f5 Q1 d' p: S3 I
  1. #返回x*(2**i)的值; L5 e/ i6 u1 Q" K% Q  W
  2. ldexp(x, i)
    3 c3 d  k6 ^# B7 c
  3. Return x * (2**i).) N% n' Z- O' L5 I
  4. >>> math.ldexp(5,5)
    7 Y% x1 }+ b( E1 B
  5. 160.0
    * N$ L4 D/ i0 m
  6. >>> math.ldexp(3,5)
    2 ]/ z( E* A2 i1 T
  7. 96.0
复制代码

) S7 D2 b4 m* |( A6 U: ]math.log10(x)  返回x的以10为底的对数' Z( f4 P/ n4 y! N
  1. #返回x的以10为底的对数0 l! f+ |9 h( G: ?& D
  2. log10(x)
    $ W9 v( j8 U0 M0 Y9 j9 c
  3. Return the base 10 logarithm of x.
    3 |" Q6 S6 R1 N1 f) b5 k
  4. >>> math.log10(10)
    , A8 k1 g/ F! u! E. I
  5. 1.0
    5 ^; n0 {% R0 ~- J& m- _8 d" q
  6. >>> math.log10(100)% b4 b8 s7 Z+ O' ~
  7. 2.0
    $ y5 X+ p. K6 J+ C' V) Q
  8. #即10的1.3次方的结果为20
    4 A& s% ~" ~8 ~1 ]1 c+ |* k
  9. >>> math.log10(20)
    ' Y8 C6 n8 A" Z4 j" J& x4 `
  10. 1.3010299956639813
复制代码

6 v4 r( u0 }+ @; p  fmath.log1p(x)  返回x+1的自然对数(基数为e)的值
. c! [, M+ N- ^" A+ }5 I
  1. #返回x+1的自然对数(基数为e)的值+ m& H7 v! U" _. X/ T
  2. log1p(x)
    % f0 K" X* E7 _2 h- z$ M" }
  3. Return the natural logarithm of 1+x (base e).
    5 x. y$ d6 c( m+ c2 G) F
  4. The result is computed in a way which is accurate for x near zero.* y) p; u: |. M# |+ s: D2 ~' L
  5. >>> math.log(10)
    + Z" h" p+ g2 p3 ~* ]
  6. 2.3025850929940461 f4 c* _* m3 {2 F9 n1 p
  7. >>> math.log1p(10)
    + L( K, u' m/ _
  8. 2.39789527279837075 r6 U. K. e" h  p+ c% L
  9. >>> math.log(11)/ i# l/ w  I/ J5 h9 N) R
  10. 2.3978952727983707
复制代码
2 G8 Z7 ~- Z5 p- I4 [  i# M
math.log2(x)  返回x的基2对数# g7 M: m" b% O9 O
  1. #返回x的基2对数9 ]" o) h: T1 r. ]/ z6 s
  2. log2(x)
      n" G0 z# f. t3 G
  3. Return the base 2 logarithm of x.8 w0 u3 S* r" Z6 n
  4. >>> math.log2(32)) p. F7 c  g% Z
  5. 5.03 y  z1 h- o4 B
  6. >>> math.log2(20)( |8 a+ H# E$ e, K
  7. 4.321928094887363% w) I% x- p2 f' z1 Z: v1 w
  8. >>> math.log2(16)
    ! _: U( k. S+ e0 K+ [
  9. 4.0
复制代码
9 G3 b. t( B. W- U4 y
math.modf(x)  返回由x的小数部分和整数部分组成的元组
0 U& a* \% [7 n$ `- c; L
  1. #返回由x的小数部分和整数部分组成的元组+ t( ?; I9 F& }# i% i
  2. modf(x)7 R1 C. l/ R7 E* W; o/ i4 l8 j) O
  3. Return the fractional and integer parts of x.  Both results carry the sign" e, u  p' [! f& i  ~
  4. of x and are floats." \0 j# \9 ]' l* v% p
  5. >>> math.modf(math.pi)
      O) k, Z7 V0 D. P1 w
  6. (0.14159265358979312, 3.0)
    " x" c, p" E" |6 N: o" r5 u
  7. >>> math.modf(12.34). c, [7 j- P" w# |  }# L4 A. Y( _' x9 r
  8. (0.33999999999999986, 12.0)
复制代码

" L4 S  J7 w3 R, D7 N$ v+ V5 ^$ [math.sqrt(x)  求x的平方根
: ]. m9 A& D1 T5 f4 p" L- ~
  1. #求x的平方根" S2 I& X& C  M: \6 G
  2. sqrt(x)
    ! @# _8 H# o. w; N8 h1 t) c* K
  3. Return the square root of x.) f/ W7 {7 S8 F: M/ A+ C
  4. >>> math.sqrt(100)' N2 Z' q  C1 u6 p& R) {; A
  5. 10.0
    4 i8 J6 {/ s/ @& M5 [
  6. >>> math.sqrt(16)9 L  K. V0 M# G! V. J
  7. 4.0' [# v3 g" I$ y& y  A6 o3 L, i) D
  8. >>> math.sqrt(20)& p" _8 V! `1 C+ q- P+ p8 ?
  9. 4.47213595499958
复制代码

9 c7 T7 h7 ]2 J: h! p  @: Pmath.trunc(x)  返回x的整数部分
  1. #返回x的整数部分
    ! w( S4 m" T0 d( O
  2. trunc(x:Real) -> Integral  e' n+ O! t4 F: X
  3. Truncates x to the nearest Integral toward 0. Uses the __trunc__ magic method.7 [3 Z. E+ ?4 b' {1 T4 F, ^
  4. >>> math.trunc(6.789)
    1 Z4 ]8 W6 ]- s3 t
  5. 6
    7 b9 M6 M" q8 @6 [# @, Z, {9 Y5 t
  6. >>> math.trunc(math.pi)7 c0 K' S& }7 ^
  7. 3, q- o) S0 k: O, @/ R: H6 p2 ]4 B
  8. >>> math.trunc(2.567)8 Z5 Q, D& A# ?& P# u+ K- o$ p
  9. 2
复制代码
:其中蓝色字体部分是高中需要掌握的基本语法

最新评论

文字版|小黑屋|新大榭 ( 浙ICP备16018253号-1 )|点击这里给站长发消息|

GMT+8, 2026-6-1 16:37 , Processed in 0.095184 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表