新大榭论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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

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

新大榭论坛 门户 查看主题

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

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

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

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

x
+ ]2 k0 u  _( e- Z+ t& G  U; H2 `
【注意】在使用之前,必须先导入math模块,以开方函数 sqrt 为例,介绍2种引入方式及各自使用方法。8 {) B; t  ]1 X/ I! J6 i

$ d) X8 q0 @& ^% s7 p" c& K方法1
- `5 [: ]- Q* z) O
  1. >>> import math
    ! ?7 A: T! A8 e, l$ Q' }! U% u
  2. >>> math.sqrt(9)$ B7 {* i. ?/ y% ^2 k- Y/ |# q5 j+ L
  3. 3.0
复制代码
方法2
0 O. @3 u- M7 r  P& P
  1. >>> from math import sqrt/ O8 }4 Y/ y) J/ S
  2. >>> sqrt(9)+ k' v! ]  v7 |( \: U. z" s) |
  3. 3.0
复制代码

" W3 I! C, {' c, T  R: |
! b* ?( q$ p2 o9 K- L& c& R4 \/ H
math.e  表示一个常量
3 ?2 u, ?: {  C/ Y
  1. #表示一个常量
    + e. G  W# R! q) T, @  O
  2. >>> math.e$ C0 h( W+ U9 U. t
  3. 2.718281828459045
复制代码
8 X; C1 e8 B8 L; G/ x  {& N* y
math.pi  
数字常量,圆周率
" a7 B+ z0 G0 k1 d/ ?7 A5 u0 k
  1. #数字常量,圆周率8 D( w0 s, K- t/ W; y8 _- `
  2. >>> print(math.pi)
    # A) T, M3 f4 i6 M& H  Z
  3. 3.141592653589793
复制代码
% Z2 D; W  _. D" q3 p
math.ceil(x)  
取大于等于x的最小的整数值,如果x是一个整数,则返回x

! T4 j1 R( @4 }% m2 ^7 I1 r
  1. #取大于等于x的最小的整数值,如果x是一个整数,则返回x  g: ^* h" _: c8 E" [8 @% _7 c
  2. ceil(x)
    * _& R0 q1 L4 h$ [, U( D
  3. Return the ceiling of x as an int.  A" @8 p) M# g' b
  4. This is the smallest integral value >= x.: f/ I6 E7 I  h- Q( w' y+ X
  5. + E8 X. |$ |+ G
  6. >>> math.ceil(4.01)
    & L7 L. f' u2 @5 @1 y$ }
  7. 5, K' o! b) C- N. s/ H) F  i  `
  8. >>> math.ceil(4.99)5 |; [' ]  x4 \2 F% n$ Y
  9. 5) f1 O% ?; Q& N2 G8 A5 L
  10. >>> math.ceil(-3.99)" m, n- j' G1 h( ^( X
  11. -3( I3 U8 F1 U. W  u* u( ^  [; x
  12. >>> math.ceil(-3.01)( U, B" ?9 H# ~9 Y9 F9 {
  13. -3
复制代码

& H8 C1 ?3 l. s* @3 ?9 Hmath.floor(x)  取小于等于x的最大的整数值,如果x是一个整数,则返回自身2 @7 X+ [0 ^! F$ [
  1. #取小于等于x的最大的整数值,如果x是一个整数,则返回自身. h' V* M& G5 f
  2. floor(x)
    # v4 Z. S( P2 @9 |- S
  3. Return the floor of x as an int.& w  M( u& b; |' `5 q
  4. This is the largest integral value <= x.1 D( m6 G7 \; m1 z' l
  5. >>> math.floor(4.1)! @* s0 v7 y. y; {( N6 P+ \1 ?# K
  6. 46 z4 R0 Y% T/ B1 H3 d
  7. >>> math.floor(4.999)2 Y; q* f' s5 X- M* e; Z4 g
  8. 4
    ! z% `0 Z5 e, h" ^/ U! I: y0 o
  9. >>> math.floor(-4.999)
    8 H3 X7 T" I( ]. i1 d' ^
  10. -56 @4 T5 N1 J( f: W" q
  11. >>> math.floor(-4.01)6 C2 I- E9 Z' k4 h
  12. -5
复制代码

4 F. v% v" g1 S5 V! kmath.pow(x,y)  返回x的y次方,即x**y1 j" \: r' B2 a) z) ~: _/ s, |8 c
  1. #返回x的y次方,即x**y; G+ w5 e1 ]. x- D
  2. pow(x, y)
    " v4 W7 r: e8 _' J! H5 z/ Q4 k  W# Y
  3. Return x**y (x to the power of y)." R1 u& ]% d$ U. O
  4. >>> math.pow(3,4)) \% `. j* J3 a9 d/ q
  5. 81.0  }& p+ @& b& [4 L
  6. >>> 1 x5 T( q( G/ F
  7. >>> math.pow(2,7)4 r3 N2 J7 C: O$ }8 Y
  8. 128.0
复制代码
$ Y, y7 k  c! x) F( O! e7 H
math.log(x)  返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base)
+ E: O% C& u  O3 H& j- M) U" J
  1. #返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base)* y: p# X; ]  n
  2. log(x[, base])6 R, D. T+ w0 `( ~0 f- t8 \, Z
  3. Return the logarithm of x to the given base.2 i. x" i3 @8 t6 S" b; O1 |. x
  4. If the base not specified, returns the natural logarithm (base e) of x.
    0 g; T/ p/ E: W2 c2 w
  5. >>> math.log(10)5 X( m" _# l1 H% k) U
  6. 2.3025850929940464 o% [1 L" ]4 C) T6 m% B
  7. >>> math.log(11)) M: Q0 i% q* m! Y8 q* W
  8. 2.3978952727983707- R- f% }& m  C0 O" \
  9. >>> math.log(20)
    7 t. Q+ j; G2 y' f+ c$ ?+ M* b
  10. 2.995732273553991
复制代码

/ C# }% g" w. ymath.sin(x)  求x(x为弧度)的正弦值( K2 f0 u( _6 l
  1. #求x(x为弧度)的正弦值
    % n; t7 _, A2 L% T" N. [# f2 i' N
  2. sin(x)$ |! \/ M, u3 i2 l; _- Z4 }* X7 \
  3. Return the sine of x (measured in radians).
    + e% b0 J' T" x7 S
  4. >>> math.sin(math.pi/4): [, z# e: U* s8 F
  5. 0.7071067811865475
    ( J% a2 ?9 Q2 V3 }+ t' S
  6. >>> math.sin(math.pi/2)2 a- ~2 b/ i& A- t2 q
  7. 1.0
    ' N2 V3 N+ [5 h& }) r
  8. >>> math.sin(math.pi/3)
    ' w* @( ^0 ~! X( a  w3 l# b% j- _
  9. 0.8660254037844386
复制代码
  m( q% }* M1 t3 i- T4 X2 }# K
math.cos(x)  求x的余弦,x必须是弧度
$ s5 m3 N9 @6 F& ~2 O
  1. #求x的余弦,x必须是弧度) j" g# {4 A9 B7 R: \( k( b
  2. cos(x)
    / C+ r8 w' [, O4 k: V" D8 ~
  3. Return the cosine of x (measured in radians).; a8 D. i* ^1 r# R" [4 s
  4. #math.pi/4表示弧度,转换成角度为45度
    6 Y/ h, `9 p& M: \. a% W0 a3 R
  5. >>> math.cos(math.pi/4)( G9 U! |( C. B/ V9 z6 c; |5 n+ g
  6. 0.7071067811865476
      f  N5 c8 A1 Z& n7 }6 K
  7. math.pi/3表示弧度,转换成角度为60度& c0 O' e2 [; Q* _5 Y. P
  8. >>> math.cos(math.pi/3)
    " e: b& W/ \/ s, s# l
  9. 0.5000000000000001
    . `! v( ]4 D% a& B  i/ a! ?7 X; i
  10. math.pi/6表示弧度,转换成角度为30度/ f2 n9 t! L+ d& }; ^% u
  11. >>> math.cos(math.pi/6)4 U. p; F( F/ e. X
  12. 0.8660254037844387
复制代码
6 @+ ]& n( L) Q% s& p
math.tan(x)  返回x(x为弧度)的正切值8 I  S' A% J$ g  K  O& n/ v: r+ m) d0 J
  1. #返回x(x为弧度)的正切值# A- B! r* ^# j0 b6 H
  2. tan(x)4 E% Z7 k/ v: f* `0 t& N+ u
  3. Return the tangent of x (measured in radians).% p# Q9 Q3 }( z3 E
  4. >>> math.tan(math.pi/4)
    8 W; k! e# a0 P3 d6 i6 N
  5. 0.9999999999999999
    ' p: r0 z4 f8 A% x) J3 ~+ J
  6. >>> math.tan(math.pi/6)4 g& R8 ]4 F- `9 K; O" I3 W
  7. 0.5773502691896257$ b% p# \# Q3 g# f
  8. >>> math.tan(math.pi/3)
    , T: n9 B- D) M) l$ Q
  9. 1.7320508075688767
复制代码

( Y( I( Q1 B8 P9 W0 j/ I7 |math.degrees(x)  把x从弧度转换成角度7 O- }, j; G8 r% x& X
  1. #把x从弧度转换成角度+ p. Z0 i  ]  z( U; a
  2. degrees(x)
    1 x9 x# y) p2 q* Q7 l9 v
  3. Convert angle x from radians to degrees.
    8 z% X$ m8 `+ d( g  |

  4. 7 W$ W; ?5 C+ i& z* g5 U
  5. >>> math.degrees(math.pi/4)7 V/ S' s* }3 M8 P
  6. 45.0; O5 G: ]. C1 D! f( ]6 L0 {3 n
  7. >>> math.degrees(math.pi)
    % r6 I8 i* I2 H7 A& H
  8. 180.0
    7 `% l; j/ t: Q8 a' [2 T/ H
  9. >>> math.degrees(math.pi/6), P) ~- d: p! j9 j6 k
  10. 29.999999999999996
    / c9 ~/ x/ Y3 X/ x' b; c6 [- u
  11. >>> math.degrees(math.pi/3)% [! [0 }* ]* O+ l! i2 ?/ J
  12. 59.99999999999999
复制代码

5 p( v! a1 R0 M7 w: Umath.radians(x)  把角度x转换成弧度- V- L) ^% e" Y, V# }" g) M4 h
  1. #把角度x转换成弧度
    ) t# P# `& ]$ ^6 M! S
  2. radians(x); |: t" X- v0 C' c7 F+ ~' r" Y# B
  3. Convert angle x from degrees to radians.' c+ x1 C9 W7 I& C
  4. >>> math.radians(45)
    + W$ q/ R6 l# a) K1 d1 A
  5. 0.7853981633974483
    , b9 q2 ?# V5 k. @9 Y2 e" P; o
  6. >>> math.radians(60)
    5 m. Z: ^2 Z" i+ E
  7. 1.0471975511965976
复制代码

) R, U  @$ y/ N" u' N/ B5 \math.copysign(x,y)  把y的正负号加到x前面,可以使用0% K1 @3 Q, K# j% G" j
  1. #把y的正负号加到x前面,可以使用0
    ' n: |8 l% t0 p6 i' f! ?
  2. copysign(x, y)
    1 p/ J  }- ~3 _- }/ ?5 J1 F3 A3 a
  3. Return a float with the magnitude (absolute value) of x but the sign ; O4 D/ N8 ^# P8 u, ]1 Z
  4. of y. On platforms that support signed zeros, copysign(1.0, -0.0) , q) r- I4 Q7 v  o/ t3 k1 t" @8 i
  5. returns -1.0.9 a* |" n! D; e" w
  6. 7 J4 w7 e% Q1 b
  7. >>> math.copysign(2,3)
    . W2 u1 b4 K4 O0 ?: V
  8. 2.0
    % S$ D" D# ?( Y7 q/ O
  9. >>> math.copysign(2,-3)0 H; ^$ j3 [3 t! `& d6 K0 f& ^3 U
  10. -2.0
    5 L5 v% o: a: Q' ^2 n
  11. >>> math.copysign(3,8)* L* h# _) C- e2 R
  12. 3.0
    $ Q/ }8 w8 }. U1 M) P  K
  13. >>> math.copysign(3,-8)/ j9 k& ]" ~+ U! d
  14. -3.0
复制代码

; H1 A3 m" Q) d+ C7 a7 F6 Rmath.exp(x)  返回math.e,也就是2.71828的x次方
+ W9 n' q+ \) v  T
  1. #返回math.e,也就是2.71828的x次方
    1 O3 A' D0 u; I. z
  2. exp(x)
    + b9 B3 v7 m# J! R+ ]
  3. Return e raised to the power of x.  r/ l, n% t1 _' @9 _. l; Y* L
  4. $ z' ?) P4 U$ \3 h; j- h" i1 b; G
  5. >>> math.exp(1)
    4 S$ [& o6 s4 a5 [; q1 |
  6. 2.718281828459045
    5 K/ Z) j0 U; `0 d& a8 R
  7. >>> math.exp(2)
    8 V% Z, A/ t. c
  8. 7.389056098930658 x) I1 H! s1 [( b; Y
  9. >>> math.exp(3)2 t6 @" d0 W! t# g
  10. 20.085536923187668
复制代码
+ m! N$ J& ]* U9 e
math.expm1(x)  返回math.e的x(其值为2.71828)次方的值减1- v( j. ?- t; A: `4 o
  1. #返回math.e的x(其值为2.71828)次方的值减1
      G6 p* e, v- }( c
  2. expm1(x)
    + Q4 R; O' t+ J4 ^
  3. Return exp(x)-1.
    # t  X8 I9 C( f0 |' Y
  4. This function avoids the loss of precision involved in the direct evaluation of exp(x)-1 for small x.
    ( I( [& Z! _' d

  5. 0 E& f0 Q6 U, j5 |4 _. M% n
  6. >>> math.expm1(1)( ?$ K7 b7 [$ \* }
  7. 1.718281828459045% a; F! _4 z$ T4 F; ]' a. V* `
  8. >>> math.expm1(2)
    " U  n8 u* R* K+ g
  9. 6.38905609893065( j. w3 \6 `$ u
  10. >>> math.expm1(3)
    ' z& t2 Q9 E( \! J5 S) i% b' C( C
  11. 19.085536923187668
复制代码

+ S( {2 w+ P1 j$ e1 r6 o- [2 tmath.fabs(x)  返回x的绝对值& G' W4 O; `+ S" Y! x
  1. #返回x的绝对值
    2 x9 `3 i; S$ b) c
  2. fabs(x)' q- J2 q" y* }/ K5 Y0 a
  3. Return the absolute value of the float x.
    / g7 E3 ^$ p, N* G- J6 B" b: }% @

  4. ( E# b9 O' P3 B% ?+ n8 h3 Y
  5. >>> math.fabs(-0.003)5 H% B( [" m3 ?* ?8 D7 s8 s- ~
  6. 0.003
    2 F! F* k# ~+ Z7 i0 k. Y9 ]9 i$ F7 |
  7. >>> math.fabs(-110)8 p1 H. f" r; _+ {9 u
  8. 110.0( x- b4 z- N" y! r# m
  9. >>> math.fabs(100)
    : W, I7 C1 _- _5 H$ N# ]$ q
  10. 100.0
复制代码

/ @, X3 l) F% ~4 u5 `6 Kmath.factorial(x)  取x的阶乘的值1 e8 L8 D7 l4 ]9 r
  1. #取x的阶乘的值
    $ H6 c& @2 p# g! X" N, ~; P4 {
  2. factorial(x) -> Integral
    * ]  \# B. `' |# C7 z
  3. Find x!. Raise a ValueError if x is negative or non-integral.3 [( O1 |" t3 j3 |
  4. >>> math.factorial(1)
    ' A+ y  N5 f% M, u& s
  5. 1
      I- `( o( N( A3 u* K' e
  6. >>> math.factorial(2)0 |% V# `% c; @; c! c2 o
  7. 2
    3 W( K% m) R- g( E# `. V
  8. >>> math.factorial(3). E" ?. j; C: c/ V- d
  9. 6
    : m5 w& F5 \$ |" l9 j& ~
  10. >>> math.factorial(5)" d0 V+ F  L6 p
  11. 120( k, y  {3 B6 J6 o+ L
  12. >>> math.factorial(10)
    ' Q( _4 a" W, w' d+ ^4 B; ^
  13. 3628800
复制代码
# n. r  p8 J( t+ |- I
math.fmod(x,y)  得到x/y的余数,其值是一个浮点数$ v% A# e1 O) l% ^. B: M; `
  1. #得到x/y的余数,其值是一个浮点数3 r0 M( ?8 }# z* B, E, h# A
  2. fmod(x, y)
    ' p5 h2 O6 x: C4 L0 {' M' t
  3. Return fmod(x, y), according to platform C.  x % y may differ.
    + ^* B: B. ]/ l
  4. >>> math.fmod(20,3)3 e0 Z. A8 N* o  `1 K2 D" E, }0 a
  5. 2.08 v- v1 i& Q: d" v2 c% [1 P9 m
  6. >>> math.fmod(20,7)& C$ e0 }6 r, E
  7. 6.0
复制代码

2 y* w1 i- q4 t; J( |; a# xmath.frexp(x)  返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围& y1 \- M: E( j4 l+ b
  1. #返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围,
    1 W3 o) D, B) }6 @% P
  2. #2**e的值在这个范围内,e取符合要求的最大整数值,然后x/(2**e),得到m的值& m0 g% _+ t( T( P
  3. #如果x等于0,则m和e的值都为0,m的绝对值的范围为(0.5,1)之间,不包括0.5和17 E3 t5 e9 A' g
  4. frexp(x)3 q" {' g# L2 e- _4 S& \3 s
  5. Return the mantissa and exponent of x, as pair (m, e).
    + L$ o2 b) L/ B3 Y
  6. m is a float and e is an int, such that x = m * 2.**e.
    9 H- [# b! @5 ^/ s! ^' d" B
  7. If x is 0, m and e are both 0.  Else 0.5 <= abs(m) < 1.0.5 }. \( n4 z5 k
  8. >>> math.frexp(10)& L- H& M$ t, ]5 i8 y% f0 _4 v7 m
  9. (0.625, 4)2 }( N; R3 d3 j* i, c3 f+ G' y
  10. >>> math.frexp(75)
    8 n$ B# B) Z5 \- ?
  11. (0.5859375, 7)
    # E, m, ]7 i& M! x& [  C( x
  12. >>> math.frexp(-40)
    4 L/ e/ h: w1 I1 k) [
  13. (-0.625, 6)" Y) L/ P3 X0 {% O* A! g
  14. >>> math.frexp(-100)' N% U  w5 U$ ?, c7 i9 d
  15. (-0.78125, 7)
    ) e0 g" B8 f- T3 @+ m2 t  C, [5 \
  16. >>> math.frexp(100)! G) ^" a/ J5 ]; b
  17. (0.78125, 7)
复制代码

2 z" p7 x' p" G+ Kmath.fsum(seq)  对迭代器里的每个元素进行求和操作:seq 代表 序列
3 L7 l8 g0 \5 D" U3 a% C7 j
  1. #对迭代器里的每个元素进行求和操作; G$ _4 F, |; F/ |5 s6 Z
  2. fsum(iterable)1 a* r! Y% A% ]1 {0 M% e
  3. Return an accurate floating point sum of values in the iterable." @# s8 `5 H) [5 |# o" S) |; T
  4. Assumes IEEE-754 floating point arithmetic.0 E6 k& s- p) S7 g: n; Q0 c4 q4 d
  5. >>> math.fsum([1,2,3,4])% y0 n2 z! l9 [  T5 |; ^( U- a
  6. 10.06 d" c, l3 n! u4 N! m5 p
  7. >>> math.fsum((1,2,3,4))( ^) C% W/ S' w) s7 L7 a9 J* X# l
  8. 10.0
    0 ?3 W. Q# S  ?
  9. >>> math.fsum((-1,-2,-3,-4))
    6 q) n+ D# D% W& k4 V- q9 f7 Z9 G/ L
  10. -10.0+ o7 u8 _' r+ z+ ~% k- \8 b
  11. >>> math.fsum([-1,-2,-3,-4])
    - K0 l8 K8 E0 Y
  12. -10.0
复制代码
/ M1 _1 f" A, x/ F) Z
math.gcd(x,y)  返回x和y的最大公约数0 {% S& z1 _5 E* k4 D
  1. #返回x和y的最大公约数0 C0 \: |2 j9 O6 ]1 L  L
  2. gcd(x, y) -> int
    ' E; e/ M* B3 z; S- ~' p
  3. greatest common divisor of x and y8 I0 n) W/ x3 Y: P  K
  4. >>> math.gcd(8,6)' o+ f2 X- B4 \4 f: V; m6 x: i
  5. 2
    % c, }+ p5 H' i( }8 t7 b: r( U% a
  6. >>> math.gcd(40,20); k6 x* T$ F" g& r1 v$ Q
  7. 20
    , Z' U. n: M  w4 g$ j; X. s, l; L
  8. >>> math.gcd(8,12)' ?6 E; f2 x! r, r, p
  9. 4
复制代码

* T6 I' K/ t$ N- Jmath.hypot(x,y)  如果x是不是无穷大的数字,则返回True,否则返回False
7 s( [# E% I0 R7 F
  1. #得到(x**2+y**2),平方的值7 T( O' v/ ^# w# b+ P  o- g! d
  2. hypot(x, y)1 ~7 ?. H/ `* g* k+ r( ]# w
  3. Return the Euclidean distance, sqrt(x*x + y*y).  g, S4 j2 }7 _" ]
  4. >>> math.hypot(3,4)
    2 D) ]  D2 \, m( A# g
  5. 5.06 Q: m) m/ s; u* I" h  F
  6. >>> math.hypot(6,8)) O; P5 T* V$ l* C' |
  7. 10.0
复制代码

0 l6 t3 D: m+ l. nmath.isfinite()  如果x是正无穷大或负无穷大,则返回True,否则返回False0 w/ f$ q' I+ M1 H% V4 t/ |
  1. #如果x是不是无穷大的数字,则返回True,否则返回False6 O8 J8 g" f+ e" ~7 M- {
  2. isfinite(x) -> bool* ^, O* `3 J( A" o% I6 e' X
  3. Return True if x is neither an infinity nor a NaN, and False otherwise.6 D2 |  g! I' f
  4. >>> math.isfinite(100)
    ! n2 f1 h, I+ O
  5. True
    ) C& F% [* c' [
  6. >>> math.isfinite(0)3 q, H/ C; i# _3 X, k- S! C4 m  i
  7. True# [. l# L! {& w. h( Y
  8. >>> math.isfinite(0.1)" N/ p9 V& E+ C5 U# {2 e
  9. True7 }" z) y$ w* |$ X; D  d# C6 O
  10. >>> math.isfinite("a")
    8 E7 I" n4 I; b: f
  11. >>> math.isfinite(0.0001)! i4 J0 r: a: _. j) {4 s
  12. True
复制代码
  c; V% O& \% u$ r+ o2 y* _
math.isinf(x)  如果x是正无穷大或负无穷大,则返回True,否则返回False
% `" q9 L. I" m
  1. #如果x是正无穷大或负无穷大,则返回True,否则返回False
    1 |- I& b- h0 [6 N
  2. isinf(x) -> bool6 k  O  s- M0 a1 f9 v
  3. Return True if x is a positive or negative infinity, and False otherwise.5 h0 ~7 U' [5 e: l( K
  4. >>> math.isinf(234)
    - `& J. T2 b  L0 ~; v( E' I( X
  5. False" u* @5 ~" R* e" g/ z
  6. >>> math.isinf(0.1)
    - b& y' K5 p1 T4 i( ?% {
  7. False
复制代码
4 }0 s2 H7 \, _7 j0 H2 ^
math.isnan(x)  如果x不是数字True,否则返回False
. n3 e* o) \) d' ?2 i
  1. #如果x不是数字True,否则返回False& j2 h4 K1 \( l( g/ `; R' P
  2. isnan(x) -> bool
    & Q+ x& s9 Z, v9 }8 }4 r; u4 j
  3. Return True if x is a NaN (not a number), and False otherwise.8 T+ }) \; M3 q1 u
  4. >>> math.isnan(23)) @1 A* R% W% j7 r! `/ r& j
  5. False
    3 u) t% E- a! }6 T
  6. >>> math.isnan(0.01)
    2 [! f( g, N3 S! S; c5 `
  7. False
复制代码
  q3 Z5 W$ M) m
math.ldexp(x,i)  返回x*(2**i)的值
* `: w: ?  {. A3 ^' N- ^+ h+ Q! ^
  1. #返回x*(2**i)的值9 Q( l# m! x4 G6 m$ \
  2. ldexp(x, i)
    ) y! Y* G( i) |4 f" c. T  c9 W- E: ^
  3. Return x * (2**i).0 ]- k  J0 S; }! @
  4. >>> math.ldexp(5,5)
    ) N( i! l" U1 X
  5. 160.0
    ) p( r6 d/ r/ r4 B. b; c& c
  6. >>> math.ldexp(3,5)
    , _9 r$ l; J3 _" y7 C: D. q8 O
  7. 96.0
复制代码
6 y: |% K5 Q1 j# D) l: x
math.log10(x)  返回x的以10为底的对数! K" e4 |- A! t1 W2 @
  1. #返回x的以10为底的对数
    ) L( f3 }+ V% o# T: Q
  2. log10(x)! p1 N$ T' T& ?3 G4 o* J
  3. Return the base 10 logarithm of x.6 W' |9 S) P5 r$ f; U
  4. >>> math.log10(10)
    $ A% k' U/ T+ d: B1 X& b& q
  5. 1.0' W$ u; v, O  j% [" n" M& {
  6. >>> math.log10(100)
    $ ]1 J4 \7 Y* q5 a
  7. 2.0* O" T" }0 ~+ z# g% Q* h, ^# k
  8. #即10的1.3次方的结果为20; L: y/ D' X, M& D" D% e5 y- G0 u
  9. >>> math.log10(20)/ e; C$ \1 g9 q3 T
  10. 1.3010299956639813
复制代码

$ |; `2 r3 B1 n+ y% X* Smath.log1p(x)  返回x+1的自然对数(基数为e)的值' P- L/ H- V  A# E9 Z+ `: w+ O) w% b
  1. #返回x+1的自然对数(基数为e)的值
    : ?- q& t1 M% C7 S( z; V; o: m# V* G
  2. log1p(x)
    9 }- F) i0 X3 o: u
  3. Return the natural logarithm of 1+x (base e).
    9 H8 A& K" n; c' W# A0 l
  4. The result is computed in a way which is accurate for x near zero.
    $ O9 t4 M4 N% b
  5. >>> math.log(10)
    $ Q& _! N+ U, v8 X1 s
  6. 2.3025850929940466 U6 R( P# R! j# V7 `( O; h
  7. >>> math.log1p(10)& B0 v0 W* @+ H  ~' E  S+ r$ i
  8. 2.3978952727983707% e! s! e& T. ]) I4 L  y
  9. >>> math.log(11)4 n( C5 m: Y, T8 `3 Q: N
  10. 2.3978952727983707
复制代码

2 o" `, n% O$ u; |4 ^% j  ~math.log2(x)  返回x的基2对数5 k( n2 ~8 M$ h: B& V- j0 T* Z
  1. #返回x的基2对数% E1 r  E' s/ A# k$ ]1 ^. c7 C; Z# R6 c' n
  2. log2(x)! g9 Q- Y) W; a- }: {
  3. Return the base 2 logarithm of x.
    . l( |2 N0 e( J+ x( v0 H
  4. >>> math.log2(32)& u& K* U6 u8 u3 E8 v
  5. 5.0
    % ~# v' M) H( Q
  6. >>> math.log2(20)2 m, n2 A1 |4 P! g2 e) G7 m; ^
  7. 4.321928094887363
    4 {& f% x9 T1 A7 _! G
  8. >>> math.log2(16)
    ; J' s0 T7 N3 a
  9. 4.0
复制代码

! P  r3 c4 a0 J& r4 }$ d" c+ Cmath.modf(x)  返回由x的小数部分和整数部分组成的元组
* c% n, E/ H' X
  1. #返回由x的小数部分和整数部分组成的元组
    + t( Z" {( j1 J7 ?
  2. modf(x)( g! e, s' f/ O  F. O% `$ Q
  3. Return the fractional and integer parts of x.  Both results carry the sign6 E' x' V/ ^! Q1 q
  4. of x and are floats.
    1 Q9 T, p4 u+ Q
  5. >>> math.modf(math.pi)
    0 L- [3 B# u! D
  6. (0.14159265358979312, 3.0), F1 i8 T" p, K0 u4 k; P
  7. >>> math.modf(12.34)
    ! r1 P/ \" l4 o
  8. (0.33999999999999986, 12.0)
复制代码

. Y) w5 _- v1 v) z: C7 vmath.sqrt(x)  求x的平方根) G6 H& C4 a' ^% W: [# Q
  1. #求x的平方根
    ! @; [% j* P3 v* Y" s
  2. sqrt(x)
    5 a' N' N9 h$ a9 m* S
  3. Return the square root of x./ s& t/ J* T. ]2 I+ {
  4. >>> math.sqrt(100)- n; ^9 b8 r- g% M$ C" O
  5. 10.0$ _, e& Z" h/ m9 P  c* n6 `
  6. >>> math.sqrt(16)
    3 k+ k- d! H% p* r4 [( T/ e( o
  7. 4.0( C: Y/ e7 e! f- q" C) D
  8. >>> math.sqrt(20)' E* D8 f7 l6 c- B, }
  9. 4.47213595499958
复制代码
0 R. e% U. ?( G6 i7 }4 N
math.trunc(x)  返回x的整数部分
  1. #返回x的整数部分
    : e, J+ |+ I; ~. w* ~
  2. trunc(x:Real) -> Integral( S9 W( A+ G3 g5 v
  3. Truncates x to the nearest Integral toward 0. Uses the __trunc__ magic method.2 Z- M% |9 j+ \0 I, `. _! k
  4. >>> math.trunc(6.789)7 a8 ]$ H+ _- N' m/ S! o8 o
  5. 6) G  z/ O  Q4 P
  6. >>> math.trunc(math.pi)+ a* w# k4 t- x" M1 K
  7. 3
    # Y/ q, v4 O5 e
  8. >>> math.trunc(2.567)
    ) ~1 t& h1 `* d5 A9 @
  9. 2
复制代码
:其中蓝色字体部分是高中需要掌握的基本语法

最新评论

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

GMT+8, 2026-3-28 13:46 , Processed in 0.093965 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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