新大榭论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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

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

新大榭论坛 门户 查看主题

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

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

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

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

x

1 S( c) t6 ?8 F; [+ v3 v8 A+ K9 |【注意】在使用之前,必须先导入math模块,以开方函数 sqrt 为例,介绍2种引入方式及各自使用方法。
( b% p. ~* i0 H: [
9 m, G5 w  g2 T) j1 j& T0 y
方法1
- u$ j1 |+ c8 }0 O* M& m
  1. >>> import math
    7 j# E2 J* I1 K- E; C5 c
  2. >>> math.sqrt(9)
    4 ^% H) b7 N, l2 n
  3. 3.0
复制代码
方法2
9 a$ T4 c6 d+ V) V
  1. >>> from math import sqrt
    % d3 S: ~0 t/ _0 \# B; w+ u+ n
  2. >>> sqrt(9)
    # G. S  c, m) X# n$ X
  3. 3.0
复制代码

  @! W; }' X) k
1 z+ }  _* ^$ I- ^
math.e  表示一个常量
6 h4 i  r- `3 z( l$ g
  1. #表示一个常量
    % `" [4 `0 t; V* l: [( c
  2. >>> math.e
    2 ~$ g" v2 c9 J' ~8 H* ~
  3. 2.718281828459045
复制代码

1 m5 Q0 _; e: ymath.pi  
数字常量,圆周率

! L/ [  ~/ }( @4 E5 ^. v4 O9 b
  1. #数字常量,圆周率
    4 i0 ?4 M1 l/ |! G" I0 a# C
  2. >>> print(math.pi)/ Y" q0 g9 n0 B* v! f4 M" `
  3. 3.141592653589793
复制代码
3 p1 N$ D& S0 w) `/ h* a  O
math.ceil(x)  
取大于等于x的最小的整数值,如果x是一个整数,则返回x
1 ?% h4 c3 {! j% r1 H
  1. #取大于等于x的最小的整数值,如果x是一个整数,则返回x
    2 |/ |4 k( c& S) k- Y! G' ^, D9 g+ h
  2. ceil(x)
      X$ N  O8 J$ H4 ]6 w" Z
  3. Return the ceiling of x as an int.
    , h: W7 T" \4 M, U
  4. This is the smallest integral value >= x.  s% \# W) B2 U
  5. ) l% [9 y8 q# c1 h
  6. >>> math.ceil(4.01)6 O0 a0 [9 m. [* V3 {& j
  7. 5
    6 C, T# B$ Q) b( F0 w* ^
  8. >>> math.ceil(4.99)
    + y3 _" o8 m% x
  9. 5
    ! f+ e5 V( c5 z) k5 p
  10. >>> math.ceil(-3.99)5 P% w* R5 f# M, \1 [- x' V
  11. -39 p  X) m) f4 Q% O& g( d3 C! e
  12. >>> math.ceil(-3.01)
      u7 H. x  N0 d+ ]5 i
  13. -3
复制代码
$ t! n/ a4 e; D& e, w( g
math.floor(x)  取小于等于x的最大的整数值,如果x是一个整数,则返回自身- c+ g; S5 w7 W  J* E" H
  1. #取小于等于x的最大的整数值,如果x是一个整数,则返回自身
    ; f6 v% u  M' h/ ~& r5 f; P
  2. floor(x)
    , F( s% x! n2 v5 P! m  L
  3. Return the floor of x as an int.
    . y  a( Q( u$ t  Y1 H
  4. This is the largest integral value <= x.) {& q! d9 a7 I- W* A3 g2 q
  5. >>> math.floor(4.1)
    8 I  S# y- V4 ~+ A3 H. X9 s
  6. 4- Y) y# S: L% A' f; @: t! t2 A- z% C
  7. >>> math.floor(4.999)- n9 [0 Y; a% S& v3 B3 @1 E8 C
  8. 4, D2 Z: H: [- a, d, L
  9. >>> math.floor(-4.999)
    . ~1 q* z' P0 R& E2 H
  10. -5: G9 E. h+ C( ]( s$ }/ R* n" B, X5 U
  11. >>> math.floor(-4.01)
    ) j- S* [6 @  m$ o& B
  12. -5
复制代码
. r! G9 O7 F+ n4 N+ ], B9 O& {
math.pow(x,y)  返回x的y次方,即x**y5 L7 ?, ?5 Y) D0 O
  1. #返回x的y次方,即x**y) P0 ]' B1 X: K5 v' K$ |# Q/ n" V
  2. pow(x, y)4 N- J) q* K( e. I9 G
  3. Return x**y (x to the power of y).0 H' _+ B# O% W& ]2 c% n
  4. >>> math.pow(3,4)
    7 r$ I6 a* T: N# v7 |6 f7 M
  5. 81.0
    / B+ ]" ^1 }6 M! d+ a6 K1 e
  6. >>>
    , k2 `1 S' x0 u( {
  7. >>> math.pow(2,7)
    5 z3 B! z! {) X! a
  8. 128.0
复制代码
; c6 c* t+ T& o2 R# i
math.log(x)  返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base)
/ N; O$ J+ o  o5 }' l
  1. #返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base), e) y  [/ s& X9 [/ d
  2. log(x[, base])
    / u$ @1 Z" i( w: }0 R1 y7 H" Z
  3. Return the logarithm of x to the given base.
    ' ^$ l2 Z- y) @2 C2 y- Q# B
  4. If the base not specified, returns the natural logarithm (base e) of x." m; a9 S* f  [
  5. >>> math.log(10)
      A$ q( v4 h( C: Q
  6. 2.302585092994046
    8 \/ H% w! u/ H: C+ C) b/ Y
  7. >>> math.log(11)
    3 X. e4 \8 Y$ R7 ]
  8. 2.3978952727983707% p2 `9 P6 g' i. S$ ~0 S  r
  9. >>> math.log(20)6 x+ l8 F) {9 q) S( y+ X
  10. 2.995732273553991
复制代码
- ]3 X$ N  X3 v5 L3 Y5 a
math.sin(x)  求x(x为弧度)的正弦值
6 P3 W' Y2 z- v0 {+ Y: b2 C
  1. #求x(x为弧度)的正弦值7 ~9 C7 }3 c+ |/ t/ _2 s" S
  2. sin(x)
    8 }0 Q" ^2 C+ S2 ^. E
  3. Return the sine of x (measured in radians).
    % K  [6 I" L5 t: b$ }8 G: g
  4. >>> math.sin(math.pi/4); H. Q8 q2 @) _, G7 Q) b
  5. 0.7071067811865475
    : j# b; [) g3 d! e6 e
  6. >>> math.sin(math.pi/2)( F& L, A% W2 s  P, E" \
  7. 1.0% }4 i$ A3 z1 V: y, Z( k  @2 y6 a
  8. >>> math.sin(math.pi/3). X. r; r4 K' D$ W. k7 F8 A+ K
  9. 0.8660254037844386
复制代码

; c/ L; A' C  A8 zmath.cos(x)  求x的余弦,x必须是弧度* n$ K! H* [! d; G# j1 h! u
  1. #求x的余弦,x必须是弧度) J" S) ?3 C& Z+ N( j! K& ?  I
  2. cos(x)
    ; {6 b! n* S( X( i
  3. Return the cosine of x (measured in radians).$ P5 x% K6 A+ F2 t+ m) l
  4. #math.pi/4表示弧度,转换成角度为45度) {* e  |7 L2 ?" k* g3 ^6 V1 d+ p
  5. >>> math.cos(math.pi/4)7 Q+ n5 U) e  f
  6. 0.7071067811865476
      T' R2 \  w. s3 n5 G6 j, Y
  7. math.pi/3表示弧度,转换成角度为60度
      X4 q1 M# j, f" N# K. R# h
  8. >>> math.cos(math.pi/3)! E0 M" k9 x$ H: Y
  9. 0.5000000000000001
    ) W: k- B  ]' o& d5 ]' L2 o. O
  10. math.pi/6表示弧度,转换成角度为30度& D/ }0 l8 a7 @  B, Z- [. p
  11. >>> math.cos(math.pi/6)' h3 o& D/ ^5 c
  12. 0.8660254037844387
复制代码
" G- L+ e# a: T: `
math.tan(x)  返回x(x为弧度)的正切值3 y8 b$ _, O8 l1 l4 Q
  1. #返回x(x为弧度)的正切值
    ; h* @- U- N! w' B6 K* J8 o6 Q
  2. tan(x)1 m" D. v9 `: o, r/ Z5 q+ J
  3. Return the tangent of x (measured in radians).
    1 t) ~1 O& |" p6 L6 h2 U' t
  4. >>> math.tan(math.pi/4)
    4 d) b$ b! D( S4 i$ {6 r0 e' m
  5. 0.9999999999999999
    ' a2 p9 z  a: n2 {$ _
  6. >>> math.tan(math.pi/6)" l) O0 D- s4 W2 o
  7. 0.5773502691896257
    8 ^( Q  N  K! @& O7 F# f' l9 p/ `
  8. >>> math.tan(math.pi/3)
    2 C  p. L% P6 C8 E) |  }
  9. 1.7320508075688767
复制代码

6 f1 m; X1 A) \' q. F3 tmath.degrees(x)  把x从弧度转换成角度1 u) ^+ B) T- e' B5 u/ V  h
  1. #把x从弧度转换成角度, ?. C$ {' ]3 ]
  2. degrees(x)& Y. k9 l5 R7 U7 a0 J% c8 \! C
  3. Convert angle x from radians to degrees.
    ! e2 d8 ^+ p! s! R

  4. 5 R  @, D' p3 d
  5. >>> math.degrees(math.pi/4)
    $ U. R6 `+ {/ i6 M) {
  6. 45.0; B7 S' C3 L' t9 @7 x8 k
  7. >>> math.degrees(math.pi)" c" ~5 \, D! r& Z+ F
  8. 180.01 z' J! h& x8 k; {* U
  9. >>> math.degrees(math.pi/6)
    ( p3 J  X. q5 j- `
  10. 29.999999999999996
    ! {% q1 E* b! q1 a
  11. >>> math.degrees(math.pi/3)7 g8 p& O7 @. R- U0 X, ~: w
  12. 59.99999999999999
复制代码

7 k! j* n- v! Ymath.radians(x)  把角度x转换成弧度  o& r* K' Q" Z7 a
  1. #把角度x转换成弧度
    : J0 J, V* V- F. Z7 M
  2. radians(x)
    7 F, T  r* S* b# R# S
  3. Convert angle x from degrees to radians.
    9 }! w* p  g* ~+ A0 \) V. x
  4. >>> math.radians(45)
    ) a: ?2 M7 m8 S* G, m" r
  5. 0.7853981633974483$ D; i" ]+ W& J* k4 S
  6. >>> math.radians(60)
    ; Y3 B+ z& O; I2 E# c
  7. 1.0471975511965976
复制代码
3 A9 O6 j' z( u0 T7 ~8 b6 b
math.copysign(x,y)  把y的正负号加到x前面,可以使用0
1 V# K0 m8 H, }  r- S
  1. #把y的正负号加到x前面,可以使用0+ I% n' t0 v9 Y5 y4 D9 v. s1 T+ Q7 a
  2. copysign(x, y)% T/ ]! N+ E, Y+ d* C
  3. Return a float with the magnitude (absolute value) of x but the sign ! V( x7 m, \1 O8 e2 }9 L: Z" f, @# Y
  4. of y. On platforms that support signed zeros, copysign(1.0, -0.0) 1 W' q, ^3 L2 y# ?) y
  5. returns -1.0.* o' a& y$ ~: H& o. U
  6. 5 [* N9 L1 E% M* m+ l; Z! Z! V
  7. >>> math.copysign(2,3)0 f+ Z4 S* t; [! l  w* A
  8. 2.0
    & K; V' V" X+ \4 C6 n% p# D5 r
  9. >>> math.copysign(2,-3)
    8 k; e( r& b! z' _
  10. -2.0
    9 m# V+ b9 M7 b9 b- R3 K
  11. >>> math.copysign(3,8)7 _- ^3 H( P7 _1 @! z% T' V! B
  12. 3.0
    ! s) q4 S; F: ?9 l0 F
  13. >>> math.copysign(3,-8)
    2 e: z: R' k1 B, J
  14. -3.0
复制代码

* B$ @, [$ a3 o8 h% }2 A* [math.exp(x)  返回math.e,也就是2.71828的x次方7 ]7 k* K$ c; @) R* ]  y+ U5 i
  1. #返回math.e,也就是2.71828的x次方8 u* F6 L- F1 ~
  2. exp(x)% v5 ^9 e' w" d; l% Q, c
  3. Return e raised to the power of x.
    / [' y4 p9 i- p/ m3 C
  4. ) G* V+ j' j+ {( l( f) G
  5. >>> math.exp(1)
    8 ]9 b' _0 r. n4 V, w# R
  6. 2.718281828459045
    1 l0 ]  ?1 h1 G
  7. >>> math.exp(2)1 Z+ N: f- s/ _5 I  k! L9 q
  8. 7.389056098930650 H, Z2 V) t8 T0 ~) c- ]( G
  9. >>> math.exp(3)7 j% K+ z* k/ f/ W6 A/ _
  10. 20.085536923187668
复制代码
: S' j: ?& }4 d$ [& C( ^5 {! L
math.expm1(x)  返回math.e的x(其值为2.71828)次方的值减1
$ c) f2 [, }! h- m, z! K7 ]  z
  1. #返回math.e的x(其值为2.71828)次方的值减1
    / B- Q9 m' m# k4 L6 F
  2. expm1(x)
    * g/ Z& D) `! O7 o3 c
  3. Return exp(x)-1.- n$ |, g; t+ ]9 \& M
  4. This function avoids the loss of precision involved in the direct evaluation of exp(x)-1 for small x.) ~7 ]$ ]+ y7 N! s/ L

  5. : j" m+ J! _1 Y" q2 G) L
  6. >>> math.expm1(1)
    " A; w( e4 J* x/ C- c' @1 b) T
  7. 1.718281828459045) H: R& L0 e/ T! b$ e. \4 {
  8. >>> math.expm1(2)0 M. k/ l3 e. B2 T& J
  9. 6.38905609893065
    ! C$ ]+ ?2 V; O" A3 M
  10. >>> math.expm1(3)
    8 ^5 _3 F2 h# i- N7 t9 S% a5 [
  11. 19.085536923187668
复制代码

* N/ V& f$ [1 zmath.fabs(x)  返回x的绝对值
: M2 v. x, G9 d
  1. #返回x的绝对值. K* M7 h" t. T7 i, o5 k
  2. fabs(x)
    6 `, f( k% x% }8 t7 E1 h- b3 d2 V
  3. Return the absolute value of the float x.1 R$ S) ^& n! R+ r

  4. 4 K& q7 |! q+ b. j
  5. >>> math.fabs(-0.003)
    1 u" i8 q  V* T/ S, c2 x
  6. 0.0035 U; Q  l# T2 S: h# L/ [
  7. >>> math.fabs(-110)6 I$ b: ~/ ]0 }, d
  8. 110.0
    , s% K& Q8 Y( w! L0 {
  9. >>> math.fabs(100)
    - K. g( x" P' Z8 ~$ n8 I3 H
  10. 100.0
复制代码
: a! [' A3 h% p' J  |, L
math.factorial(x)  取x的阶乘的值
5 q# N# G/ ~- e4 v  y# R3 x, f' @
  1. #取x的阶乘的值
    # ^' h3 X( H/ @. g  n
  2. factorial(x) -> Integral/ M4 Z" \/ H: d+ o, u
  3. Find x!. Raise a ValueError if x is negative or non-integral.7 I, m# h- [/ R1 i
  4. >>> math.factorial(1)
    ! L. t5 y, U% O$ @" ~: g" g
  5. 1
    $ A) o& j9 p$ H/ R" G1 m6 x
  6. >>> math.factorial(2)- Q2 q, K# f9 I5 L' U4 r5 @
  7. 2
    - q$ O" s: p, E- K
  8. >>> math.factorial(3)* Y8 V7 F( h* P6 t: @2 ]
  9. 65 D! F: w$ @6 I4 a
  10. >>> math.factorial(5)
    % n1 @" M' `/ ]+ U6 ~* _
  11. 120, R0 C" O9 U- ^- i
  12. >>> math.factorial(10)
    ' f4 ~5 ?. W+ t6 `9 V! d) a
  13. 3628800
复制代码
' w: D! q) \: @: L
math.fmod(x,y)  得到x/y的余数,其值是一个浮点数+ g9 @4 u* g4 V& g
  1. #得到x/y的余数,其值是一个浮点数
    $ t. w* P+ H8 ?7 V; L
  2. fmod(x, y). J6 Z/ Q6 c+ [! l
  3. Return fmod(x, y), according to platform C.  x % y may differ.
    / Q% b4 L( h( e3 M' M8 T
  4. >>> math.fmod(20,3)0 u) o& a9 d  x& ]% M
  5. 2.0% Y5 H$ ?/ m' v+ t5 o. [
  6. >>> math.fmod(20,7)
    # y: H( a! P- _" Q: `, i- P: L* _
  7. 6.0
复制代码
  f3 I+ t  ]) z+ n) ?
math.frexp(x)  返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围: j4 n; M* \5 R  y0 o9 T2 L
  1. #返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围,& _  p! G5 {5 f0 F+ p. q
  2. #2**e的值在这个范围内,e取符合要求的最大整数值,然后x/(2**e),得到m的值, d- ]" d9 m" }$ q
  3. #如果x等于0,则m和e的值都为0,m的绝对值的范围为(0.5,1)之间,不包括0.5和1
    5 E8 ]: j5 U9 e; v: i
  4. frexp(x)0 z# K: l( z- @$ S% W1 o
  5. Return the mantissa and exponent of x, as pair (m, e).
    # F: z: b2 Z% x8 Y/ W# d
  6. m is a float and e is an int, such that x = m * 2.**e.
    7 h+ l( ?, ^" g
  7. If x is 0, m and e are both 0.  Else 0.5 <= abs(m) < 1.0.
    ; q: t; h6 Q# f, V  U% \
  8. >>> math.frexp(10)
    ! I2 f. m, ~0 o, x5 V% s- X, E: S
  9. (0.625, 4)
    7 b6 l/ _( c( g  r
  10. >>> math.frexp(75)
    4 E6 T0 [9 q* [8 b7 J& E
  11. (0.5859375, 7)
    3 W$ Z3 I$ R0 a+ j7 {+ _1 G- D9 y# K
  12. >>> math.frexp(-40)
    6 G; b! p* x& l1 U5 y1 J$ [1 v
  13. (-0.625, 6)% @% Z# D) y$ P" `  k0 P
  14. >>> math.frexp(-100)' C& u" @9 y  ~/ [  d
  15. (-0.78125, 7)
    6 Y# b, w* y! E/ V7 w$ B9 H1 y
  16. >>> math.frexp(100)
    $ x4 c; v; }' F9 P5 _& J- ]
  17. (0.78125, 7)
复制代码
7 Y2 l1 x, E% K  ^6 X8 e8 R
math.fsum(seq)  对迭代器里的每个元素进行求和操作:seq 代表 序列' q' H& F+ q; ]- t9 f) s+ b
  1. #对迭代器里的每个元素进行求和操作! i/ _4 S$ y- C! o
  2. fsum(iterable). ^! ]: r* I& o% V$ H
  3. Return an accurate floating point sum of values in the iterable.! q& i! `, K* W- l( r
  4. Assumes IEEE-754 floating point arithmetic.
    ) ]  |8 P/ `% P7 j
  5. >>> math.fsum([1,2,3,4])
    ) `5 X3 H& E% G) c/ y0 v$ `
  6. 10.0
    % R/ T( x( L6 t" i3 u, a
  7. >>> math.fsum((1,2,3,4))
    : v: ]! H& y5 ]0 ?0 H" I) z
  8. 10.0* |1 n0 C( Y* T. y3 x( q
  9. >>> math.fsum((-1,-2,-3,-4))8 A! b; {9 @4 I1 I4 {) f
  10. -10.0
    ( C* G4 _2 O8 m" O
  11. >>> math.fsum([-1,-2,-3,-4])
    6 }+ M$ _8 i& m4 W
  12. -10.0
复制代码
0 J3 f) Y5 D- P. K; Z' @1 P
math.gcd(x,y)  返回x和y的最大公约数# ~/ z7 c& n/ L" z4 l% g
  1. #返回x和y的最大公约数/ p) m: L+ P5 K) L
  2. gcd(x, y) -> int
    . l2 g8 ?' N) k3 H1 E
  3. greatest common divisor of x and y5 u2 m, x3 ?0 ^2 D
  4. >>> math.gcd(8,6)7 v+ M0 k/ t" z( J/ \/ o+ U
  5. 2
    2 |4 \, U% I; p% Q; o0 A- \
  6. >>> math.gcd(40,20)' ?. ?; A, o) t, Q" G: N  q+ ^, R
  7. 20
    6 n% A/ e/ @5 M3 U$ t) f4 F
  8. >>> math.gcd(8,12)
    5 V$ J. [6 h7 z( c: u5 L  I
  9. 4
复制代码
4 Q  X) N4 j9 l; L
math.hypot(x,y)  如果x是不是无穷大的数字,则返回True,否则返回False4 z6 i% e$ m* I6 j* W
  1. #得到(x**2+y**2),平方的值9 F+ a$ D* D, M& _2 W
  2. hypot(x, y)
    - t" F2 G$ t! P3 b) E( C; ]% F' G
  3. Return the Euclidean distance, sqrt(x*x + y*y).
    + H! T: m" k/ B$ Y( N8 S: Y' B
  4. >>> math.hypot(3,4)
    8 r7 W2 H' S5 r: v/ [* O
  5. 5.0/ Z' M& ^% o. T4 t/ u
  6. >>> math.hypot(6,8)1 \% P% @) U; U$ \4 k
  7. 10.0
复制代码

/ C3 \& a, U9 l2 \" Wmath.isfinite()  如果x是正无穷大或负无穷大,则返回True,否则返回False% x9 m( X: J" Q# J/ e9 D$ ~6 X
  1. #如果x是不是无穷大的数字,则返回True,否则返回False
    ' Q6 J# Z% C) U7 X" W! I9 W& c
  2. isfinite(x) -> bool: }1 x- {7 s( s7 a
  3. Return True if x is neither an infinity nor a NaN, and False otherwise.
    4 G, P: n8 ~# |0 s/ w8 Q' x
  4. >>> math.isfinite(100)/ p& T1 R4 R; M" e
  5. True* O8 T- c5 @3 R3 S  g9 T+ U! y
  6. >>> math.isfinite(0)% z7 c" n$ q/ c
  7. True
    * I0 C/ x3 b+ H* S
  8. >>> math.isfinite(0.1)1 U, J5 O2 s! m% Z& }* p
  9. True1 h; a" C: V/ c) Y6 M
  10. >>> math.isfinite("a"); X4 Y- `6 y% C( n# b/ I* w  D1 Y
  11. >>> math.isfinite(0.0001)
    / r2 _' P2 _) z* H) R
  12. True
复制代码
  X' w  W! A  }# D; G; R9 |+ F
math.isinf(x)  如果x是正无穷大或负无穷大,则返回True,否则返回False
3 q) h& f% ?) p0 y
  1. #如果x是正无穷大或负无穷大,则返回True,否则返回False, _! M' P* m  O
  2. isinf(x) -> bool
    9 Z0 `3 F  D( |8 j; g# C
  3. Return True if x is a positive or negative infinity, and False otherwise.
    + R4 L0 h7 h6 [6 v* ~
  4. >>> math.isinf(234)# w5 \! _. @2 E$ _& S
  5. False
    8 z, h- V- H- f; \1 B: Y, O& \9 B
  6. >>> math.isinf(0.1)9 u4 R* O5 Y# ^+ ^" B& b
  7. False
复制代码

4 m/ s3 ^8 m' U! s& s! I: Lmath.isnan(x)  如果x不是数字True,否则返回False
6 S4 y" v) M# V: F* D( b+ y+ z
  1. #如果x不是数字True,否则返回False1 o5 j5 }& {, u# t$ R
  2. isnan(x) -> bool9 b3 n/ K# i3 c* ~* i8 ]& c
  3. Return True if x is a NaN (not a number), and False otherwise.
    ; Y  d7 o" W4 q3 X/ T# T2 t
  4. >>> math.isnan(23)
    0 W# |) }8 a5 M  I
  5. False
    8 z( Z" a" k5 i+ y) w  _
  6. >>> math.isnan(0.01)
    " @1 O5 l0 n3 `( ?' m5 v0 |
  7. False
复制代码
0 |  @! u% P% O: h& V/ q! o
math.ldexp(x,i)  返回x*(2**i)的值# N5 w2 Z: x$ @- w! ]2 F" }
  1. #返回x*(2**i)的值' l# }* e, s- n# z( Z' {
  2. ldexp(x, i)# [0 M: n' M2 W) E' I- [
  3. Return x * (2**i).7 e3 U+ y+ g; w( W  d4 v
  4. >>> math.ldexp(5,5)
    0 [6 J) Q/ d8 D; v( S8 w
  5. 160.00 y# y8 y& m& B. u& p: }
  6. >>> math.ldexp(3,5)% J0 m3 k" l4 ^2 I+ U* q
  7. 96.0
复制代码

2 W0 q$ f/ c* w1 x7 Y3 U8 f9 M0 dmath.log10(x)  返回x的以10为底的对数3 C7 W( K- X& ]2 N# Q( P3 r
  1. #返回x的以10为底的对数
    ) q4 O3 j5 Y9 {- A% J( t
  2. log10(x). d) s9 j: k: m7 s- R& [, k
  3. Return the base 10 logarithm of x.
    4 n! K5 K7 c" E0 m
  4. >>> math.log10(10). O3 o( D0 Y) ]- Q1 C
  5. 1.0
    6 ?; |# a: t5 J* ]
  6. >>> math.log10(100)* M" e3 E8 S$ x
  7. 2.0% }( Y( \: o! q
  8. #即10的1.3次方的结果为20
    . v! F9 V6 W  T# X- u0 |% S! @
  9. >>> math.log10(20)
    4 j1 [8 P5 z8 X7 L
  10. 1.3010299956639813
复制代码
, k1 w7 U# s' D5 n0 w- u/ ]+ m5 f
math.log1p(x)  返回x+1的自然对数(基数为e)的值
2 d4 z7 i+ A5 I
  1. #返回x+1的自然对数(基数为e)的值4 G: E$ Y( j" Z: }6 ]
  2. log1p(x)7 E2 K: T* z0 Z) b2 R  s
  3. Return the natural logarithm of 1+x (base e).8 h5 `, j' W, g+ \
  4. The result is computed in a way which is accurate for x near zero.3 x2 n  X3 |& O3 \3 j  h
  5. >>> math.log(10)
    1 u/ c4 G! _  H8 y7 g
  6. 2.302585092994046
    ! _/ ^7 [) D* Q6 X5 _6 u
  7. >>> math.log1p(10)
    & Z1 n8 U1 l0 C  Y/ k
  8. 2.39789527279837073 \3 F5 n1 k1 m* |8 d1 o, G1 s: g
  9. >>> math.log(11)
    1 T8 J  S% B. E2 v. z) B. X1 `
  10. 2.3978952727983707
复制代码
/ Z9 `$ h3 u6 e
math.log2(x)  返回x的基2对数: W2 w! o/ Q. e' F
  1. #返回x的基2对数
    3 e7 \. M6 c0 ]
  2. log2(x)6 L9 d" F$ s6 E4 N9 J. |$ M% X1 A
  3. Return the base 2 logarithm of x.( U* z# G( |# G( Q! L1 A5 h
  4. >>> math.log2(32)' F' g% H% R0 J  Z5 H
  5. 5.0
    ; k# N$ V" f8 d. ?1 K. _2 }
  6. >>> math.log2(20)$ a5 Y4 `% g. r4 E6 n" Q
  7. 4.321928094887363  g1 w$ s6 p! Q. i# R
  8. >>> math.log2(16)
    7 W( E/ T. x/ {. O* t' ?& S
  9. 4.0
复制代码
9 w- W$ s9 K9 _- d
math.modf(x)  返回由x的小数部分和整数部分组成的元组' B0 H' G6 s% e7 S8 Q9 h3 @+ E2 F
  1. #返回由x的小数部分和整数部分组成的元组
    . w* K4 d* A* u. e3 [( T
  2. modf(x)
    + }( N+ a* Q; t3 e
  3. Return the fractional and integer parts of x.  Both results carry the sign3 c( ~) L5 ]% g' y0 y% V
  4. of x and are floats.
    ; a2 K3 V, n& [0 P% U1 U. L5 t
  5. >>> math.modf(math.pi)
    2 u/ V( k( W6 j
  6. (0.14159265358979312, 3.0)+ V$ I; t; z) v: {( M, v3 U
  7. >>> math.modf(12.34)
    9 k% ^2 g8 K4 a* |+ p7 f8 C
  8. (0.33999999999999986, 12.0)
复制代码
* f" L2 g  f: f1 ?% e
math.sqrt(x)  求x的平方根
/ D# D; J2 g  o
  1. #求x的平方根+ O: t, E2 p2 R
  2. sqrt(x)
    3 P  ^$ h9 t6 ?% i- b
  3. Return the square root of x.$ a3 M* o. A: B; \* y
  4. >>> math.sqrt(100)5 g: T( g7 b' M) N- }/ j
  5. 10.02 C& H# H4 J) n7 M3 v" |" _! e
  6. >>> math.sqrt(16)5 m; F( d; }; Q- }" E; a+ f& E
  7. 4.0
    1 M2 u8 g6 c9 X
  8. >>> math.sqrt(20), I8 ^8 u  P4 t4 L7 W2 E; M
  9. 4.47213595499958
复制代码
* n6 u, D0 c" l' W' l5 o% n
math.trunc(x)  返回x的整数部分
  1. #返回x的整数部分$ A6 u! p5 H: G& g) h7 b
  2. trunc(x:Real) -> Integral: Q+ H$ q, v6 [1 N
  3. Truncates x to the nearest Integral toward 0. Uses the __trunc__ magic method.
    2 i3 O4 o+ j/ [" I1 o
  4. >>> math.trunc(6.789)4 [/ \3 c* q& ~% ?7 N  O* u/ G
  5. 67 k3 C6 b/ p6 |# p8 K
  6. >>> math.trunc(math.pi)
    " H5 a. s3 u% j0 K4 o1 n) ?3 P
  7. 3
    2 F, s: N3 c8 t% X+ _$ m/ k; D
  8. >>> math.trunc(2.567)
      N3 B' |- J4 V
  9. 2
复制代码
:其中蓝色字体部分是高中需要掌握的基本语法

最新评论

新大榭七周年,感谢由您!

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

GMT+8, 2025-11-29 23:41 , Processed in 0.086991 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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