新大榭论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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

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

新大榭论坛 门户 查看主题

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

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

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

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

x
8 W5 Y  F% @$ B: t5 |# v# v
【注意】在使用之前,必须先导入math模块,以开方函数 sqrt 为例,介绍2种引入方式及各自使用方法。7 r1 \8 p+ }! C( I0 T8 o9 ]

4 l  V' j% u: U. Y5 |方法1( ]& }6 x0 F9 a0 y: {8 L' n& x
  1. >>> import math
    & t$ v, y% P3 i& ~( c' ~8 {* W) N
  2. >>> math.sqrt(9)
    ! m0 J! V4 X) e, l# G3 E( o
  3. 3.0
复制代码
方法2
* M6 u) _# y9 X8 I5 V
  1. >>> from math import sqrt
    ' W: O+ w( U6 W7 c1 k* \6 i
  2. >>> sqrt(9)
    8 C; P1 p$ }4 h  F1 l5 N5 j
  3. 3.0
复制代码

" W  n+ C* X# U: J

. q) l( ?' V8 G7 c
math.e  表示一个常量+ ~! {# h5 _# P
  1. #表示一个常量
    ' y+ {6 N- \( {6 L0 R! [9 ~0 Q
  2. >>> math.e  ]# ?6 K3 t& F! O, ^5 C
  3. 2.718281828459045
复制代码
6 B- c4 ]8 W, L1 m' U: I
math.pi  
数字常量,圆周率
* B9 w  l3 o# v! y# F5 ?9 b
  1. #数字常量,圆周率8 z) R. H0 ^4 g. x
  2. >>> print(math.pi)
    9 ]7 S/ f- [) v1 ]4 F
  3. 3.141592653589793
复制代码
/ y" j/ f% f, p) e) ~
math.ceil(x)  
取大于等于x的最小的整数值,如果x是一个整数,则返回x
6 K! b: U2 j9 C( o6 |& t5 x( a5 v
  1. #取大于等于x的最小的整数值,如果x是一个整数,则返回x
    / p8 \3 m; [4 U1 j$ B2 c) Z. p
  2. ceil(x)- z. A& W% h. q; f' K/ d  J
  3. Return the ceiling of x as an int.
    ; p- \, |: p& A$ I) i
  4. This is the smallest integral value >= x.+ N9 }. [3 W+ C6 ~  O
  5. 2 N6 ?9 R$ z, _! F
  6. >>> math.ceil(4.01)
    2 d9 `. |$ J; G, E$ t! m4 m( O
  7. 5
    # S) Y2 q. k8 M, X% K9 S2 k# ~' |$ w
  8. >>> math.ceil(4.99)' b# Z  j, H. a: c6 p
  9. 5' Y- a% @9 K6 @( j3 R: p- W
  10. >>> math.ceil(-3.99)
    7 x+ z* o8 ~" t5 Y0 C
  11. -33 F7 P) V% ]! O
  12. >>> math.ceil(-3.01)% T/ a, h1 n. m$ {7 \4 Z
  13. -3
复制代码
8 L& b/ Z% Q2 W$ e0 ?' o- H
math.floor(x)  取小于等于x的最大的整数值,如果x是一个整数,则返回自身
: ]& V* Y2 L' v6 b( P5 J
  1. #取小于等于x的最大的整数值,如果x是一个整数,则返回自身- C; a& h. S+ {. W
  2. floor(x)
    - }' ^; s& u( g6 e2 U! K
  3. Return the floor of x as an int.8 N; u$ c0 @/ Y& G& U
  4. This is the largest integral value <= x.0 E: [  o9 ]" v  o
  5. >>> math.floor(4.1)' z* _2 ~; g; e/ ]4 t- }
  6. 44 f5 r' k: Z! X, M4 N0 G
  7. >>> math.floor(4.999)
    6 t% I' q- d) D' o
  8. 4( f6 B4 |5 r1 c; S3 K& R9 m# b& L/ `
  9. >>> math.floor(-4.999)
    % T7 V7 c' M+ u  t0 }
  10. -5
    # z" a! `% R7 G/ V" i' {7 t
  11. >>> math.floor(-4.01)
    % |$ a1 ]/ L; |! @/ B
  12. -5
复制代码

5 u! [1 w3 |0 }0 Z7 d# amath.pow(x,y)  返回x的y次方,即x**y
; q- ~# p! X' p" q7 M0 }
  1. #返回x的y次方,即x**y# W  I* p( z" g+ h0 |
  2. pow(x, y)
    ( J, k2 Q+ b6 _# W4 B
  3. Return x**y (x to the power of y).
    ; d% \$ l& Q! ?, T( j9 i5 M
  4. >>> math.pow(3,4)
    - d! H; u! c; N4 E- s# Y
  5. 81.0* |' Z+ K- n# X& z$ [5 o
  6. >>> 8 `0 j9 L: N. A5 A/ @4 y2 r
  7. >>> math.pow(2,7)
      C( m8 X8 j9 @& I- f) P: {
  8. 128.0
复制代码

0 |: c# v4 b; G5 z7 Lmath.log(x)  返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base)
, Y! e9 q$ a& ]: E5 H6 v' N+ k
  1. #返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base)6 U" O, G! a5 `! l& x# K
  2. log(x[, base])
    ( P, Y& a4 L, L
  3. Return the logarithm of x to the given base.% f7 [# a6 n. `9 p9 f
  4. If the base not specified, returns the natural logarithm (base e) of x.% O4 h$ ^/ ~' X; P
  5. >>> math.log(10)
    0 ?+ q6 u4 h( b7 c
  6. 2.302585092994046# ?+ f6 ?: S7 M& \0 `" D6 C7 ^. L
  7. >>> math.log(11)
    ) G2 m4 V$ Y6 D; N) a- j
  8. 2.39789527279837075 s* a0 Y4 h1 h
  9. >>> math.log(20)
    " H" d6 f! |1 C7 x
  10. 2.995732273553991
复制代码

/ v$ h! X8 G$ C/ Wmath.sin(x)  求x(x为弧度)的正弦值8 m/ U2 n7 Z+ P! l! q8 ]
  1. #求x(x为弧度)的正弦值& _$ p  F* k! G4 ?
  2. sin(x)  G: k* [0 I8 @' y: v
  3. Return the sine of x (measured in radians).
    : M- R) q. l/ h; J4 N
  4. >>> math.sin(math.pi/4); I) H" \  ~& j& W- P
  5. 0.7071067811865475
    / o& v. O0 G4 c' L% ?
  6. >>> math.sin(math.pi/2)
    ! [4 \5 C& n; X
  7. 1.0" m/ h; C0 V! f; _" a* k
  8. >>> math.sin(math.pi/3)
    $ \1 z9 h% e2 U' G3 n0 `' F
  9. 0.8660254037844386
复制代码

' y* G$ W; {4 |- {3 ?2 amath.cos(x)  求x的余弦,x必须是弧度
% e# E8 ?. E2 \: K( O! {
  1. #求x的余弦,x必须是弧度1 W; R5 [6 ~5 c" {, D
  2. cos(x)
    ' H9 R3 r% \& t% }- z
  3. Return the cosine of x (measured in radians).% ]8 n" u, d& A3 ~( _) ]
  4. #math.pi/4表示弧度,转换成角度为45度
    8 L; s0 }! n2 I& u6 [7 c2 _6 a; Z' o
  5. >>> math.cos(math.pi/4)+ D5 _9 t& \6 B* \! _
  6. 0.7071067811865476. d: d$ ?3 h  n2 P
  7. math.pi/3表示弧度,转换成角度为60度
    - r! y6 d( Y! S3 \
  8. >>> math.cos(math.pi/3)3 j/ K' |8 c, T0 g0 A  G3 y
  9. 0.5000000000000001
    6 D  \) C; U" F1 \
  10. math.pi/6表示弧度,转换成角度为30度
    * b3 h/ o* g  A, X
  11. >>> math.cos(math.pi/6)9 o! [6 _& l" Q: z3 z
  12. 0.8660254037844387
复制代码
  N: b3 h$ d3 e# }! v: c4 ^" K( l
math.tan(x)  返回x(x为弧度)的正切值  r. H% g! o0 P; U' {  Q$ _1 J" {
  1. #返回x(x为弧度)的正切值& M- S2 h4 _; g$ b
  2. tan(x)
    9 p+ X  |. Z/ D$ ~; s! I
  3. Return the tangent of x (measured in radians).
    " o/ `) ^3 s8 M' u
  4. >>> math.tan(math.pi/4)
    $ ~. r; [& ]( l+ ^/ g" q9 l* _3 T
  5. 0.9999999999999999% ^( ^4 y6 S- B
  6. >>> math.tan(math.pi/6)9 M0 ?8 n+ u* Y/ |% @1 j
  7. 0.5773502691896257, a  ~' R, G" }9 v: L* ]! k
  8. >>> math.tan(math.pi/3)& R4 l$ A( f3 v8 w- ~- t3 T
  9. 1.7320508075688767
复制代码

) I7 A/ d1 Y! Y0 _$ R6 p) ]. ymath.degrees(x)  把x从弧度转换成角度
# j* `/ V6 B% r3 t1 }0 _- s
  1. #把x从弧度转换成角度/ @: ?0 Q' ]( u8 m
  2. degrees(x)
    $ [% l. `& y, [
  3. Convert angle x from radians to degrees.3 S1 B' z9 ?% O$ o9 ~* h
  4. ( D( b0 {2 l7 M+ G8 \$ H; ?) V
  5. >>> math.degrees(math.pi/4)
    * S4 ]0 P- {: d
  6. 45.0
    ! p5 h. [: \& k. W8 \
  7. >>> math.degrees(math.pi)* \/ `* I9 ^/ L% D
  8. 180.0
    5 N7 L8 F2 g: u1 Q0 `
  9. >>> math.degrees(math.pi/6)2 |# J+ o4 O  W7 [: k8 {/ L
  10. 29.9999999999999968 D( L. H) D' @' P! O9 R0 n
  11. >>> math.degrees(math.pi/3)1 e0 K- D. a$ \
  12. 59.99999999999999
复制代码
. o* |3 ~$ V" u
math.radians(x)  把角度x转换成弧度; {' M6 f  E# u3 F# G/ d5 {7 K! i
  1. #把角度x转换成弧度5 t+ {. Y  p! Z6 f4 K
  2. radians(x), p/ e- |, ?/ M: W/ v5 a
  3. Convert angle x from degrees to radians.
    ( @' h( w! \2 `5 ^; r% V
  4. >>> math.radians(45)
    + s( P) ?& X, [  V$ l
  5. 0.7853981633974483
    3 X! j  s; u0 @& O
  6. >>> math.radians(60)
    - E" y+ C- U) S! b
  7. 1.0471975511965976
复制代码
  h) Z7 ~& {% m( O( v- V' }; Y
math.copysign(x,y)  把y的正负号加到x前面,可以使用0
8 T/ H( x5 @* k  i  T. F
  1. #把y的正负号加到x前面,可以使用0$ Z# s+ n- {8 p3 z. D
  2. copysign(x, y)
    ; Q( C6 B- O5 ?
  3. Return a float with the magnitude (absolute value) of x but the sign
    + v' A$ y; S# u* c$ j
  4. of y. On platforms that support signed zeros, copysign(1.0, -0.0) ) u5 a. N( c$ q& ~0 n
  5. returns -1.0.
    / {4 [! n/ w% b3 T+ k2 H5 X

  6.   y- T( _# y0 c& y  @
  7. >>> math.copysign(2,3)
    ( ?* h; [: e8 u. f& Y0 b' i0 N5 ]- I
  8. 2.0
    2 G* @  u3 o2 p! E( A+ w5 g
  9. >>> math.copysign(2,-3)
    5 b+ r- e$ E. i: ?! w
  10. -2.0
    ( b! H0 y% p3 z' G4 a7 G6 z2 J
  11. >>> math.copysign(3,8)0 T8 k5 h1 I" z+ b& h( G  w
  12. 3.02 A; l0 [8 ~$ A5 ], K! ^* Q; a7 l
  13. >>> math.copysign(3,-8)- u/ [# S* y0 D/ o
  14. -3.0
复制代码

# a+ V" L4 C* \: h' S1 Emath.exp(x)  返回math.e,也就是2.71828的x次方; ^5 ~" q5 J( y- s  \2 l. |- t6 w
  1. #返回math.e,也就是2.71828的x次方4 ]5 u) \4 O& _9 z% n
  2. exp(x)
    % R; ?' Y& u1 C1 f5 h: U8 I6 m. J/ N
  3. Return e raised to the power of x.
    / }7 z. Z% u+ O

  4. 4 ]' S' q% t- C- E5 N2 u& e; Z. B7 ^
  5. >>> math.exp(1)6 B& G& I. h' K) W4 v
  6. 2.718281828459045, S9 N# O+ ~/ {1 M5 G
  7. >>> math.exp(2)
    1 a7 E. ^- {0 H6 X0 @, K1 S* k# J
  8. 7.38905609893065
    0 F" u5 \0 U% d
  9. >>> math.exp(3)1 ^9 ]- K& O5 {2 x" {
  10. 20.085536923187668
复制代码

" C  ]1 I2 o4 W( J' r) Amath.expm1(x)  返回math.e的x(其值为2.71828)次方的值减1
' Q6 K1 s5 V0 o8 P
  1. #返回math.e的x(其值为2.71828)次方的值减19 S' ^* ~8 X) E. S6 e5 _& ^
  2. expm1(x)
    / X4 j1 i, m# Y- L: ]% j
  3. Return exp(x)-1.* w. c/ k; t3 l) x7 L
  4. This function avoids the loss of precision involved in the direct evaluation of exp(x)-1 for small x.
    4 I5 r7 x/ k& `+ h8 Z& x  J0 A
  5. ) `5 \  T# q; w8 A' Q+ i7 c8 D# O
  6. >>> math.expm1(1)% R; G/ o8 I4 T: p8 s( R; {
  7. 1.718281828459045" R& \! l6 I7 b$ b6 M
  8. >>> math.expm1(2)
    & g. f7 V: E* f# x# C
  9. 6.38905609893065
    4 Z  s& Y: U" g- X' }7 g
  10. >>> math.expm1(3)& n+ I5 j. L! c* J) p* t/ A
  11. 19.085536923187668
复制代码
0 |* {6 b! H2 a, c8 B% R# U6 L
math.fabs(x)  返回x的绝对值% a9 H" q5 ]7 Q$ m3 S5 L
  1. #返回x的绝对值
    . Z: S. F$ r! _# g0 a& q+ P
  2. fabs(x)
    : n* d& _% I1 e0 W
  3. Return the absolute value of the float x.
    3 @0 Q2 W3 b2 B5 H2 K

  4. 3 i5 f" |4 J/ p3 O. p1 q# H- x  [9 @
  5. >>> math.fabs(-0.003)
    3 v4 f0 _" |% x9 N& g
  6. 0.0034 X7 M* V/ ~0 {  m8 y
  7. >>> math.fabs(-110)/ T  e, v( r8 H( P( `8 K" [; Y- m
  8. 110.0% O" l7 E, C3 V: A3 y' z
  9. >>> math.fabs(100)
    6 s5 l9 x  B7 x) H' ?
  10. 100.0
复制代码
% K# u- M- \& [: T7 n3 z# G
math.factorial(x)  取x的阶乘的值
6 Y3 @3 F3 A0 m: I) w. v
  1. #取x的阶乘的值
      W6 C' {4 y, _+ @) U" O+ h8 v! q
  2. factorial(x) -> Integral% S2 U$ H2 f6 u0 W# g5 S9 |" \  l
  3. Find x!. Raise a ValueError if x is negative or non-integral.
    1 E: x. F% a6 c8 o
  4. >>> math.factorial(1)2 K& ^7 _, G+ S: E# B  ~
  5. 1) t/ u! \& t" m2 M& O
  6. >>> math.factorial(2)
    6 v8 j% G# @$ @; ]5 P+ H
  7. 2* ]) w; _) W. k5 @7 f; s
  8. >>> math.factorial(3)8 H* E* J. J6 |+ @
  9. 6
    ) |' _3 V- e% ~( `0 f0 c
  10. >>> math.factorial(5)% h/ ~7 T  D4 @7 a5 I0 H
  11. 120( @! i1 |/ V- v) n1 Z4 |
  12. >>> math.factorial(10)3 q( U7 \* r) l
  13. 3628800
复制代码

; `4 d  |) s" s' b" `* ~: ]' i. Xmath.fmod(x,y)  得到x/y的余数,其值是一个浮点数) }$ C1 f% U3 V3 \$ ~
  1. #得到x/y的余数,其值是一个浮点数
    9 M) I5 Z( D( u* h- d5 \) s
  2. fmod(x, y)
    * F# `8 J  K. O( Z2 d
  3. Return fmod(x, y), according to platform C.  x % y may differ.
    1 _0 d2 c* U( J8 z
  4. >>> math.fmod(20,3)
    + k- }% v  i- W0 i
  5. 2.0, v1 x3 i9 `  I1 ~7 Z; m, x
  6. >>> math.fmod(20,7)7 e& w1 m6 V6 F8 [
  7. 6.0
复制代码

# h: z* C* |, d/ r% J) f6 p, Umath.frexp(x)  返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围
6 _4 F: T! z0 v/ z% s' y* n5 K
  1. #返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围,
    2 }$ F6 m! ^# H7 v% S" Y
  2. #2**e的值在这个范围内,e取符合要求的最大整数值,然后x/(2**e),得到m的值5 W5 z/ s3 W) z1 m
  3. #如果x等于0,则m和e的值都为0,m的绝对值的范围为(0.5,1)之间,不包括0.5和1* S" F4 V. x. S* r) x7 y* y
  4. frexp(x)- Z% p, l3 R) V# m
  5. Return the mantissa and exponent of x, as pair (m, e).
    4 y) c; J. d6 D: L4 [  E7 _3 h: Y
  6. m is a float and e is an int, such that x = m * 2.**e.
    $ y' w; t1 G' i, ~  u- q
  7. If x is 0, m and e are both 0.  Else 0.5 <= abs(m) < 1.0.  C+ J6 ~7 }' D* ?+ s" Y
  8. >>> math.frexp(10)
    " y+ ^" O: b; [- u4 G+ {6 J
  9. (0.625, 4)  [4 U% z+ w0 ]0 ]# J6 R5 O  @
  10. >>> math.frexp(75)
    ! i% t( M9 K4 \8 M5 r# y( J2 k
  11. (0.5859375, 7)$ U2 d! Z- \2 ~  Z* j$ F; O
  12. >>> math.frexp(-40)7 a. j. e0 r, ^/ y; @. C5 n
  13. (-0.625, 6)' e" y; s' l3 w4 @  `
  14. >>> math.frexp(-100)% j/ c# f0 P1 V
  15. (-0.78125, 7)
    9 u: z" ~7 G2 O
  16. >>> math.frexp(100)7 X" s3 T' I3 X4 k9 v
  17. (0.78125, 7)
复制代码
$ q! a/ m- g1 p1 M% O, F3 y( q
math.fsum(seq)  对迭代器里的每个元素进行求和操作:seq 代表 序列9 ?$ e1 D- f- V7 F  j1 L; U5 c# L7 ?
  1. #对迭代器里的每个元素进行求和操作: `: |! X$ u( U% h; F% D
  2. fsum(iterable)
      U  ]. @% f8 ]/ ~2 A% W
  3. Return an accurate floating point sum of values in the iterable.! m. h. a3 q# {+ L7 r7 Y
  4. Assumes IEEE-754 floating point arithmetic.8 j. D9 Q9 V# H$ t1 F
  5. >>> math.fsum([1,2,3,4])
    $ o3 m2 _1 n+ q; z$ m
  6. 10.09 ~' s" s+ Q' l6 T) ~+ K$ |/ m) q
  7. >>> math.fsum((1,2,3,4))6 R0 Q6 `: x$ ~9 U( p' ~
  8. 10.0
    4 A* g, r1 M6 y4 j) f, C% o) M+ l
  9. >>> math.fsum((-1,-2,-3,-4))$ `! L3 W7 N: r7 Z, ~
  10. -10.0' R" d2 }9 g; P/ @: q, d
  11. >>> math.fsum([-1,-2,-3,-4])3 I9 p# V$ [8 k: _5 D* A+ z  o
  12. -10.0
复制代码
- l& b& S/ ~4 |! K% R; Y9 }
math.gcd(x,y)  返回x和y的最大公约数* C  l! @$ ~; g  {
  1. #返回x和y的最大公约数
    6 P" l' r# _% v0 O9 o
  2. gcd(x, y) -> int
    ! G, ^0 m$ H6 E  V7 I( H* c7 I
  3. greatest common divisor of x and y
    * _$ c. t3 k4 d- N- J
  4. >>> math.gcd(8,6)- r8 l. S/ h5 n' F8 x6 q) B
  5. 26 z  E8 r7 v0 d2 ]: T
  6. >>> math.gcd(40,20)
    $ Z+ P8 g6 D& Q" e' d
  7. 20
    ; S- {- H) l2 Z  B# {. I/ ]
  8. >>> math.gcd(8,12)
    / h, E& y. H# X
  9. 4
复制代码

$ K5 L  |& H3 H9 xmath.hypot(x,y)  如果x是不是无穷大的数字,则返回True,否则返回False
7 [7 g2 m' J! ^5 k* t
  1. #得到(x**2+y**2),平方的值9 u4 r! E; J, I9 {
  2. hypot(x, y)
    : |' h9 v+ q/ G/ \
  3. Return the Euclidean distance, sqrt(x*x + y*y).* M" n6 E/ u% f/ ?7 l
  4. >>> math.hypot(3,4)
    # B# T" J5 u3 Y! A8 ?5 {
  5. 5.0
    " L0 U% C. ~9 a! V% i6 t
  6. >>> math.hypot(6,8)
    : t: S0 L5 b1 u
  7. 10.0
复制代码
: S8 Q% b! M7 n4 z) l, j- F
math.isfinite()  如果x是正无穷大或负无穷大,则返回True,否则返回False
8 u) m2 u% X: {  W, k' M1 X6 q
  1. #如果x是不是无穷大的数字,则返回True,否则返回False
    5 a- ]& U4 i; l0 i
  2. isfinite(x) -> bool
    - O' l2 v0 ^, @5 R6 A
  3. Return True if x is neither an infinity nor a NaN, and False otherwise.
    1 x' b: S/ F8 d
  4. >>> math.isfinite(100)6 L  F, r" r/ O
  5. True7 _- w# k- M) C, T6 o/ X
  6. >>> math.isfinite(0)9 v9 B; ?) J' D) A2 P
  7. True
    # ~, U, _! m) B( b2 E4 M9 C$ ~
  8. >>> math.isfinite(0.1)
    ) Z# ~: j! K2 J# t
  9. True. q( g" R% ~" E; N  p  J
  10. >>> math.isfinite("a"). ^4 b! k1 B3 V6 [: G/ a% S
  11. >>> math.isfinite(0.0001)
    ) y. B( i; }1 ]
  12. True
复制代码
9 V9 _, s2 Z4 L( `# X8 V8 m) q
math.isinf(x)  如果x是正无穷大或负无穷大,则返回True,否则返回False, M! C! l9 B( L  W" G: E. ?
  1. #如果x是正无穷大或负无穷大,则返回True,否则返回False
    & D7 Z/ i1 b  m9 z4 n! a4 E- ]" N
  2. isinf(x) -> bool# x7 ?5 G- `! Q. n! P* v
  3. Return True if x is a positive or negative infinity, and False otherwise.
    0 ~: p' H* \# z9 v
  4. >>> math.isinf(234)- ~  V1 u( x# \) c; {8 n/ R
  5. False
    ' Y& A5 Q& d, H4 |
  6. >>> math.isinf(0.1)5 w) F. g' |& d+ N' h
  7. False
复制代码
, X8 P( u" u5 `+ C* p/ C. i
math.isnan(x)  如果x不是数字True,否则返回False
7 l& _- B/ k  v( w* _
  1. #如果x不是数字True,否则返回False& u; p2 C1 A6 d) h
  2. isnan(x) -> bool, ]- [  i+ k6 I# y9 {7 ?
  3. Return True if x is a NaN (not a number), and False otherwise.
    , g+ e3 k+ Y0 Z+ j8 g# }
  4. >>> math.isnan(23)
    ( T' D4 w+ @& @3 C$ b6 @4 O
  5. False
    ' H9 ~9 q9 Z! P  ~( `
  6. >>> math.isnan(0.01)
    $ e4 v) k: a7 A4 c
  7. False
复制代码
" m1 b& D1 f3 l& p
math.ldexp(x,i)  返回x*(2**i)的值9 d( `, `% Y3 o& _5 B
  1. #返回x*(2**i)的值
    ( @; ]6 _( ?7 D' W
  2. ldexp(x, i)
    ) [; j9 p% ~2 J9 @" w' }: d
  3. Return x * (2**i).
    : a( _& I6 i% k# p; i
  4. >>> math.ldexp(5,5)7 P2 k6 f2 V; L. H3 _/ z* v
  5. 160.0
    * t" x; G/ j! C8 g  H2 B
  6. >>> math.ldexp(3,5)
    % M/ l( Z, s5 }. f
  7. 96.0
复制代码
  t4 m' J3 ]" M
math.log10(x)  返回x的以10为底的对数
  ~' R3 k, A8 Y2 w# `! a5 l: d9 N$ @
  1. #返回x的以10为底的对数
      D9 i& Q* ]; R+ \5 P+ O' u5 d, s
  2. log10(x)
    9 Z$ y9 `) \! ^- O
  3. Return the base 10 logarithm of x.* u" F7 [* O( _2 _$ h2 r4 s
  4. >>> math.log10(10)
    9 h0 W2 N6 L! M4 d5 z  C+ d
  5. 1.0, a! V" r: ~. S& T' ~4 m
  6. >>> math.log10(100)8 m' A% q" `, u4 z3 @% z
  7. 2.0; M& v+ s2 I) W* I  G0 D) J. x' c* b
  8. #即10的1.3次方的结果为204 Z0 j* g6 I2 m- ^. r; P
  9. >>> math.log10(20)
    + C' T2 ~# c  P7 Z- m
  10. 1.3010299956639813
复制代码

" y& r# E( v! B" m+ i2 I1 s* rmath.log1p(x)  返回x+1的自然对数(基数为e)的值
9 O; T7 P, V" J) j0 h+ T5 z
  1. #返回x+1的自然对数(基数为e)的值6 g& a; D& i# d9 H0 C; B6 `* A
  2. log1p(x)
    6 \; t. e3 \: s- b# ^
  3. Return the natural logarithm of 1+x (base e).* J, _0 |! S: K# W8 i  R
  4. The result is computed in a way which is accurate for x near zero.
    3 }" |( P; k% ]; _5 z6 s
  5. >>> math.log(10)* }# O9 @$ _9 j2 c9 \* G+ X
  6. 2.302585092994046
    + v; R) Q! g4 [6 y
  7. >>> math.log1p(10)# Y; f5 D' Y5 R6 A. e/ o. I
  8. 2.3978952727983707
    1 D' p. [$ a  @6 p( d* A4 b  {
  9. >>> math.log(11); m" q* F& A7 F2 R. C/ p. @2 H$ J
  10. 2.3978952727983707
复制代码
8 V6 L, O% G! T
math.log2(x)  返回x的基2对数
/ [7 G: n# C' Z: k
  1. #返回x的基2对数0 E8 m2 D6 V4 z" U4 B0 |
  2. log2(x)) K4 B. O, W6 U
  3. Return the base 2 logarithm of x.; ]& S( N4 a  R( T
  4. >>> math.log2(32)
    8 Z) Q* a; g$ S) T
  5. 5.0
    9 @% Q( N# x! I% d9 |5 o8 X
  6. >>> math.log2(20)
    0 G9 ~/ j4 W0 Q; @$ X; g" c
  7. 4.321928094887363
    2 O6 \- i( d/ U: ]8 d5 e
  8. >>> math.log2(16); |9 A) A3 [: |3 p! @; g8 y2 N/ Q
  9. 4.0
复制代码
/ b! M/ a$ y- H) s2 K
math.modf(x)  返回由x的小数部分和整数部分组成的元组
( x8 o9 \" I6 Q' p8 T- U. j* b
  1. #返回由x的小数部分和整数部分组成的元组6 t& ~% b# M: _5 `: Y4 f+ B7 k% Y6 l
  2. modf(x)
    2 ?- Q9 H/ ~  e8 q$ v
  3. Return the fractional and integer parts of x.  Both results carry the sign. o. \+ D- H! z+ W5 a* l  T: C
  4. of x and are floats.
    1 m& E( q: a( O8 X8 }, S; C+ z) T
  5. >>> math.modf(math.pi)4 V0 u- j' j; G
  6. (0.14159265358979312, 3.0)- d5 T& E4 E0 f
  7. >>> math.modf(12.34)
    ; y0 f# ~) k: r4 D' t
  8. (0.33999999999999986, 12.0)
复制代码

+ `3 e  t/ \7 P, n: Wmath.sqrt(x)  求x的平方根
1 b" j3 ?; u1 O0 J  r( e7 I
  1. #求x的平方根5 f, p1 M9 h! p& a2 B
  2. sqrt(x)) f3 x) x1 `% r8 M3 |# A& j
  3. Return the square root of x.6 n: h2 V: w1 f
  4. >>> math.sqrt(100)! @0 ]% M$ j: J2 E3 Q; \
  5. 10.0
    * L5 `8 i/ p  I0 _7 u) G. @) |
  6. >>> math.sqrt(16)8 O6 S% @7 |5 E' G; X: a' `/ y
  7. 4.0
    - q, M8 y4 R+ c2 N: \
  8. >>> math.sqrt(20)
    # b. ^& Z0 B1 O6 g! W5 J
  9. 4.47213595499958
复制代码
/ ]( J% c, D, ^  f
math.trunc(x)  返回x的整数部分
  1. #返回x的整数部分
    - h1 ^! C0 c7 d
  2. trunc(x:Real) -> Integral+ x6 D3 c! h* a, w) e
  3. Truncates x to the nearest Integral toward 0. Uses the __trunc__ magic method.# X3 B, l: V) [0 o
  4. >>> math.trunc(6.789)
    # W1 j$ M- i2 X9 N
  5. 6
    / P1 B; [, j7 G' \. s# `! m$ i8 Y
  6. >>> math.trunc(math.pi)/ N* q7 ]" ~/ y
  7. 31 g+ r0 J: A' |: {
  8. >>> math.trunc(2.567)
    ( ?- k2 t, c) S+ }5 f
  9. 2
复制代码
:其中蓝色字体部分是高中需要掌握的基本语法

最新评论

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

GMT+8, 2026-2-25 16:31 , Processed in 0.076689 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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