新大榭论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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

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

新大榭论坛 门户 查看主题

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

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

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

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

x
5 Z) m; E" I* z. E
【注意】在使用之前,必须先导入math模块,以开方函数 sqrt 为例,介绍2种引入方式及各自使用方法。9 p' _! G0 K' z  q: Q. l5 `/ c5 i" `
( W) F6 q7 K3 u
方法1# X+ a/ n& _* C, K9 B# u
  1. >>> import math/ i5 P2 H7 \6 \* K1 P
  2. >>> math.sqrt(9)- D0 k+ l0 E6 j! [
  3. 3.0
复制代码
方法2
% _' F- y( K# m% c# l- w
  1. >>> from math import sqrt
    % \3 i8 ]9 K) |; i8 X
  2. >>> sqrt(9)
    % f* a5 c  u( Z  g2 G3 n
  3. 3.0
复制代码
9 Z) _" C# m3 _9 l& h

+ w% S' {' E. j) c8 q$ q; A  h
math.e  表示一个常量$ }, U9 K: G) l6 P2 k8 o' B
  1. #表示一个常量5 j# i  Z6 y( A! I: |3 X( _
  2. >>> math.e5 W* q) }- ~$ n' W2 C$ r6 U6 I9 C$ Y
  3. 2.718281828459045
复制代码
; M) M' x4 E( w; B7 ^
math.pi  
数字常量,圆周率
' |' C# w; W6 [8 ]) u2 L
  1. #数字常量,圆周率
    * M$ n0 b/ y0 n
  2. >>> print(math.pi)
    - K6 d1 J5 r- T5 d  Y
  3. 3.141592653589793
复制代码

0 {  C& ^) E6 L" x; [math.ceil(x)  
取大于等于x的最小的整数值,如果x是一个整数,则返回x

& c; K8 l! y! r# r% h- O
  1. #取大于等于x的最小的整数值,如果x是一个整数,则返回x) Q) m& f( Z- }( ^, c
  2. ceil(x)
    1 P. [( v; A7 \# @( d0 ]! J7 r
  3. Return the ceiling of x as an int.3 W6 M( G4 v1 ]% N
  4. This is the smallest integral value >= x.8 [1 q% c  Q  i& s' P8 }8 j5 l

  5. / }4 y0 x7 ]( E
  6. >>> math.ceil(4.01)
    8 A5 V5 \+ ]3 m
  7. 5* y( w0 Y( y) y6 a) x" u: j
  8. >>> math.ceil(4.99)! a  p! o# h1 [2 ^! N( f. D
  9. 5
    ! ?9 f3 x( I* d' n
  10. >>> math.ceil(-3.99)) W; Q; Q- A2 o  e7 C2 U
  11. -3  [8 |5 \7 J! f/ ], A; _& R- R% O
  12. >>> math.ceil(-3.01)
    ; m: @0 F6 Y8 e: s3 S
  13. -3
复制代码

. M+ N/ u5 G9 A* U2 F* Umath.floor(x)  取小于等于x的最大的整数值,如果x是一个整数,则返回自身
, x$ }8 f) s4 O. I
  1. #取小于等于x的最大的整数值,如果x是一个整数,则返回自身
      k# h2 x7 K0 S* C/ R
  2. floor(x)
    , a1 m' T4 }- ]. |6 z
  3. Return the floor of x as an int.
    * G5 G, j/ d2 {  r: z; [5 b+ h
  4. This is the largest integral value <= x.- f: o( H" D' {7 f9 r% d3 I) m
  5. >>> math.floor(4.1)
    + @" A. F1 U, u7 O
  6. 41 n9 ?4 F4 l+ r9 E
  7. >>> math.floor(4.999)
    & |8 C/ ]' C5 p# g& o
  8. 4$ d% d6 U: @: S3 O! C+ p- J1 W
  9. >>> math.floor(-4.999)! O& G* D' X0 a+ v4 U' N% C
  10. -5
    : }4 K* d1 K9 o3 C6 V7 E
  11. >>> math.floor(-4.01)
    * h. Z+ n7 u* j4 c" ?7 `
  12. -5
复制代码

4 |8 Z8 u: e$ ^- Tmath.pow(x,y)  返回x的y次方,即x**y
$ o) k: ^8 f: V# M; G/ a( q6 S; O5 h0 x
  1. #返回x的y次方,即x**y) r' x  d$ M6 t4 }* W8 l6 w
  2. pow(x, y)5 R' d) ~) V/ N; C* {
  3. Return x**y (x to the power of y).+ m+ k+ R4 q7 o5 J
  4. >>> math.pow(3,4)5 q* E1 A- U& b' x
  5. 81.0
    2 T+ D+ e) ^2 ?/ ^! G2 t
  6. >>>
    + T7 w5 x, \' x+ ]( `
  7. >>> math.pow(2,7)
    " Y5 d) S# H8 E& y+ g* E1 ?5 B
  8. 128.0
复制代码
; w" H" K4 h7 G5 _
math.log(x)  返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base)
3 G) L) [/ N( o7 J2 t# f0 G; ^
  1. #返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base)
    5 c, j* y! ]9 h
  2. log(x[, base])
    7 q2 D% e% h: R+ g/ g3 L( H
  3. Return the logarithm of x to the given base.
    ( t$ u! A- m( `; ~; G6 V
  4. If the base not specified, returns the natural logarithm (base e) of x.) x- `& e  B' _8 ], B9 E' T$ c
  5. >>> math.log(10)
    9 t" Z' ~1 N: G6 p8 f0 `; P( o
  6. 2.302585092994046
    9 H2 R2 L7 x/ J! I# s8 S  G% \" `
  7. >>> math.log(11)! s: L0 r& ~9 I: h5 h
  8. 2.3978952727983707
    ) K3 z- q( h9 ^2 t( {1 H
  9. >>> math.log(20): V" _, W' g/ o& S% z
  10. 2.995732273553991
复制代码

% o2 `+ Q% y0 t( ]math.sin(x)  求x(x为弧度)的正弦值: \4 f% _$ m0 R. _0 k
  1. #求x(x为弧度)的正弦值# `3 w1 h% B  h+ j* c+ |
  2. sin(x). U+ u1 p2 U/ |5 [' b+ y
  3. Return the sine of x (measured in radians).
    & f2 H, ?' \) h0 b+ p" \
  4. >>> math.sin(math.pi/4)$ ]2 Q# l, _. ~4 d$ H
  5. 0.7071067811865475( d4 j# f7 O# C* g0 n
  6. >>> math.sin(math.pi/2)  }2 M) }  W9 n" K; d( m! x5 [
  7. 1.00 x9 ]& h0 V6 W6 n, _
  8. >>> math.sin(math.pi/3)) v8 @8 R( e0 ]% w+ |# J* ?! ?
  9. 0.8660254037844386
复制代码

& A) p: ]( Q/ \9 Y, L6 _+ S3 Pmath.cos(x)  求x的余弦,x必须是弧度
. O1 s  K! Z( x% p! r
  1. #求x的余弦,x必须是弧度
    4 |& [* @0 D4 Q1 r; A) E
  2. cos(x)
    - c# H/ @7 G1 j/ A8 G
  3. Return the cosine of x (measured in radians).& g( D; j3 m4 x% @# {; ^
  4. #math.pi/4表示弧度,转换成角度为45度
    9 X0 G# r' P& _7 z
  5. >>> math.cos(math.pi/4). O; z7 {3 V! B+ f: A. e' F
  6. 0.7071067811865476# B3 x3 Y' i8 W: }7 E8 U, b# S
  7. math.pi/3表示弧度,转换成角度为60度+ i9 O$ [2 E# P; ~
  8. >>> math.cos(math.pi/3)
    1 s* l$ v1 E6 T% X& r
  9. 0.5000000000000001
    : r: z! {# H3 a# X9 g  y
  10. math.pi/6表示弧度,转换成角度为30度" U$ Y8 r5 s1 b9 @- u' k% r
  11. >>> math.cos(math.pi/6)/ ]- O+ J5 h1 C# K9 J+ \; P
  12. 0.8660254037844387
复制代码

4 q* \3 E0 w# y% Xmath.tan(x)  返回x(x为弧度)的正切值
  u  T/ t" p# w; z! {: g- |" v5 H
  1. #返回x(x为弧度)的正切值
    ) O3 W2 G" Y5 [6 m8 D7 k& N$ N5 q
  2. tan(x)3 M& R/ l! b; I! B5 F) r$ ~
  3. Return the tangent of x (measured in radians).
    0 t8 ?- H# @5 F3 C
  4. >>> math.tan(math.pi/4)
    # w: U# m6 f6 ?: F4 Z! c* _2 [! W* M
  5. 0.99999999999999997 F  Q  s/ y8 X3 g
  6. >>> math.tan(math.pi/6); J; z' W1 a5 Z( O  t9 \& l
  7. 0.5773502691896257
    % b: w$ t) s. _9 t; h
  8. >>> math.tan(math.pi/3)- D) ~1 j" q: F6 D7 v" C
  9. 1.7320508075688767
复制代码
  r0 F0 D' J8 r( D8 N
math.degrees(x)  把x从弧度转换成角度
+ A9 u. H9 i2 w8 n. O  u& ^. i
  1. #把x从弧度转换成角度
    8 T6 M0 z: K8 j. H3 O
  2. degrees(x)& f! f; a3 L9 q' j: y
  3. Convert angle x from radians to degrees.+ v( l: y9 b; b; k8 e, u

  4. . T* A; E# G5 b9 ^% h2 y
  5. >>> math.degrees(math.pi/4)2 t* r* G1 J. ~  o; d
  6. 45.0, h( f# U$ g. p+ H( U& V9 X
  7. >>> math.degrees(math.pi)7 D9 i& r/ j3 D7 P1 N
  8. 180.0
    6 P) \" t1 g7 h$ j( ~6 U
  9. >>> math.degrees(math.pi/6)) p0 y5 a( l, p; Y! A( n
  10. 29.999999999999996$ s1 y  m% ^0 K. b/ z+ X6 r% \
  11. >>> math.degrees(math.pi/3)2 S* c$ f* u. t; B
  12. 59.99999999999999
复制代码
9 l" N6 W2 U3 Q# l
math.radians(x)  把角度x转换成弧度" U8 x, s9 V' @; [
  1. #把角度x转换成弧度( B1 ~: `( h1 H# @
  2. radians(x); p0 }* v  T" z  e$ V$ N
  3. Convert angle x from degrees to radians.- {5 D1 K* m0 n8 V' P: l  _" {8 Y
  4. >>> math.radians(45)
    6 x0 z5 h2 g/ @6 M. }
  5. 0.78539816339744833 R# Y$ z( z$ T- i6 L# \
  6. >>> math.radians(60): M7 c. m7 G8 t8 K- f
  7. 1.0471975511965976
复制代码
% ~1 O" m2 W* A: ^1 W
math.copysign(x,y)  把y的正负号加到x前面,可以使用0  R) ?( V& R/ H& Q/ j# {
  1. #把y的正负号加到x前面,可以使用06 M- h- z8 p* l) [+ }8 y7 T' @
  2. copysign(x, y)- G0 v( I4 t' x* q1 u- o
  3. Return a float with the magnitude (absolute value) of x but the sign 2 o, l% b) w, q* o
  4. of y. On platforms that support signed zeros, copysign(1.0, -0.0) 9 L- H: p+ ^; {- c
  5. returns -1.0., P- V# k$ J" z7 L. A# w

  6. " j' n. j) F: N& B' E# p! i' f4 v
  7. >>> math.copysign(2,3)
    8 g+ q0 Z- B' M  r) A6 D
  8. 2.0$ h# \; s/ j- t0 X
  9. >>> math.copysign(2,-3)
    / a5 U: X3 X' [: g6 |5 ?
  10. -2.0
    % T9 n8 {1 Y! a  F
  11. >>> math.copysign(3,8)2 I" S# V- d- r1 J* ]
  12. 3.03 L9 r0 K" g7 r2 E  J% Y$ f" R1 z
  13. >>> math.copysign(3,-8)
    2 B  |( W( ?3 q; e7 ]* M
  14. -3.0
复制代码
3 a6 f( V& d5 V. V6 Y; ?
math.exp(x)  返回math.e,也就是2.71828的x次方8 G9 K- V  E8 D0 u( K" a
  1. #返回math.e,也就是2.71828的x次方
    8 v$ F4 F5 S5 l  n: d
  2. exp(x)
    ; T/ N9 f" A: t' f1 a) j' w
  3. Return e raised to the power of x.
    , b2 o# v4 B+ x

  4. & ?) T8 x7 ]. k2 Z( D
  5. >>> math.exp(1)) w8 c8 m# e, E" d0 I5 v* ]
  6. 2.718281828459045
      L5 _7 U& e6 p' @# W
  7. >>> math.exp(2)
    - @( r2 F) M+ s$ F5 ?
  8. 7.38905609893065
    " x# K: L  z9 S1 ]' c
  9. >>> math.exp(3)
    : z: {" H  E- j, q" ^( A
  10. 20.085536923187668
复制代码

) ]  D# q& u4 U7 Z1 Q5 Omath.expm1(x)  返回math.e的x(其值为2.71828)次方的值减1! E( g0 s' v: X, Y& u. \5 L
  1. #返回math.e的x(其值为2.71828)次方的值减1" ~9 @: C3 P! m
  2. expm1(x)2 Q+ A1 Q. X" h" p! _( |. x& G
  3. Return exp(x)-1.  C. X& l# t3 h! {* D: m6 I) ^0 n4 |
  4. This function avoids the loss of precision involved in the direct evaluation of exp(x)-1 for small x.
    $ r- K: i, ~) L, ?

  5. & R! b; @" l$ c
  6. >>> math.expm1(1). W' S9 Y; I0 k  p: ^
  7. 1.718281828459045) X: i: p  h2 u& R8 f7 s1 g/ [
  8. >>> math.expm1(2)
    % i9 [- z; r3 S3 B
  9. 6.38905609893065
    . y+ I5 U! ?3 p. V9 t
  10. >>> math.expm1(3)8 Y% r" z" s9 c; j! v, ?. Y
  11. 19.085536923187668
复制代码

' ^; V/ L$ L/ smath.fabs(x)  返回x的绝对值
9 V! {' y# r3 Z0 C
  1. #返回x的绝对值
    ; _% P( A& o, t
  2. fabs(x)
    $ s" Y  w. M3 k7 a1 A2 s
  3. Return the absolute value of the float x.8 w: N0 V, e9 Q( S& T# @
  4. 5 B- Q+ u9 r5 _/ O8 i" @) G! Q
  5. >>> math.fabs(-0.003)
    " N0 K5 e$ [! [
  6. 0.003  f! d( N- ?7 l! N" D( U
  7. >>> math.fabs(-110)% k" [* U0 X: K  N
  8. 110.0/ a6 ?0 R% |  v3 R
  9. >>> math.fabs(100)
    . O8 R; ^5 N( A
  10. 100.0
复制代码

# ]5 X  L, f9 f7 tmath.factorial(x)  取x的阶乘的值
3 u5 q2 s6 a: M% G2 k+ ?- U
  1. #取x的阶乘的值4 Q6 j4 V* z' N# y" N) e# q
  2. factorial(x) -> Integral, M- a7 `* C3 f; Y
  3. Find x!. Raise a ValueError if x is negative or non-integral.$ d/ W) E  x2 ]9 }+ @
  4. >>> math.factorial(1)
    + v* n% v. H* B( u# Z
  5. 10 L3 d& d* E* T* Q
  6. >>> math.factorial(2)
    , n9 M+ M) z/ ~$ V! `. F
  7. 2, |& Z4 o1 n& V
  8. >>> math.factorial(3)) g/ u2 k) I. E8 a6 O! f2 c1 G) {
  9. 6+ Z! p7 ?3 D! r: w: [+ m' P* M  [
  10. >>> math.factorial(5)
    3 p6 U, g1 h( X% ?) \+ s" {# a$ n
  11. 1201 q) r( P. ~1 h' J+ Q, K+ g' w& \) P
  12. >>> math.factorial(10)/ s& C. J- U. G0 y' W8 ]
  13. 3628800
复制代码

, i. S8 }) |; e/ s7 R* T7 M8 smath.fmod(x,y)  得到x/y的余数,其值是一个浮点数# o+ f1 w% r8 f
  1. #得到x/y的余数,其值是一个浮点数
    ; ?. a- C- h4 g6 z' J7 ^# ]: z
  2. fmod(x, y), c6 h$ b+ N' M, a0 B$ A" t4 E
  3. Return fmod(x, y), according to platform C.  x % y may differ.
    * R/ i9 L2 ~/ N( U# t; z
  4. >>> math.fmod(20,3)
    7 A. u& O& s$ ?9 n
  5. 2.02 |5 `  D# U0 Z; ?7 ^! Z
  6. >>> math.fmod(20,7)0 g# D; f# \* B
  7. 6.0
复制代码

3 ]( W' q& y1 [8 kmath.frexp(x)  返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围
) t) G6 R% i1 Y' N$ ]/ i- J
  1. #返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围,
    & [+ f; ?" K% `( j" v1 _
  2. #2**e的值在这个范围内,e取符合要求的最大整数值,然后x/(2**e),得到m的值! C4 u5 h; i- g( ?! Q( a3 X, \9 o
  3. #如果x等于0,则m和e的值都为0,m的绝对值的范围为(0.5,1)之间,不包括0.5和1
    ) I3 X$ u* O8 C$ s
  4. frexp(x)+ n2 x7 Q/ N$ g
  5. Return the mantissa and exponent of x, as pair (m, e).( X4 p& ^# p9 }+ P
  6. m is a float and e is an int, such that x = m * 2.**e.5 U3 v( E$ \& K: V( L6 E
  7. If x is 0, m and e are both 0.  Else 0.5 <= abs(m) < 1.0.( v9 x7 M1 E* J, ~
  8. >>> math.frexp(10)( N, ~1 V4 S! U1 g+ ^5 p! ?% Z. o" w
  9. (0.625, 4), i3 S% j" n7 H3 q% P
  10. >>> math.frexp(75)* s. i2 E, ?# e1 E5 M
  11. (0.5859375, 7)
    0 d. y8 s& [7 i: X/ [) ]
  12. >>> math.frexp(-40)& K2 f. n2 `) a
  13. (-0.625, 6)- f8 o$ m+ a6 T: l4 ~2 }
  14. >>> math.frexp(-100)
    * B- S6 h! n; g5 q, t6 D) R2 f( x
  15. (-0.78125, 7)
    3 c: k9 @* n: B
  16. >>> math.frexp(100)
    $ G( X1 b1 G& C. {* d/ I; S
  17. (0.78125, 7)
复制代码
0 ?6 ^: I( b1 f7 T' a) R
math.fsum(seq)  对迭代器里的每个元素进行求和操作:seq 代表 序列7 _$ W' }* z/ K1 H; R1 q/ a% w
  1. #对迭代器里的每个元素进行求和操作' \& P+ I* }# X& f
  2. fsum(iterable)
    ) o) i& V# H* @& r% x" y
  3. Return an accurate floating point sum of values in the iterable.
    2 z' Z8 r& e( S
  4. Assumes IEEE-754 floating point arithmetic.4 W' z8 h& ~- g0 p5 S; H# A
  5. >>> math.fsum([1,2,3,4])1 p' m+ d: G9 F0 y: r: [
  6. 10.0
    0 E8 R2 L7 D  {& |2 [: g+ ?
  7. >>> math.fsum((1,2,3,4))
    8 ?4 J- b# N9 V. J3 p
  8. 10.0) O7 T  j0 j7 ~: w0 R1 {( ?
  9. >>> math.fsum((-1,-2,-3,-4))5 U: S% f  u) ?7 \7 [" E# ^
  10. -10.0$ d/ {0 l- J6 A& X- }: a
  11. >>> math.fsum([-1,-2,-3,-4]): g1 l7 T! |/ I. X$ Q% x- N$ P
  12. -10.0
复制代码

1 J* d% F3 f2 J; n8 N4 k8 \math.gcd(x,y)  返回x和y的最大公约数- T4 N/ t8 q+ D, E3 d+ k! S) F
  1. #返回x和y的最大公约数* P8 M8 b; N' {5 X& ?: Q& v
  2. gcd(x, y) -> int
    7 [6 l0 b* Y; E) s+ o$ I
  3. greatest common divisor of x and y
    ' }2 D( o3 F# k8 p3 C8 F0 ]
  4. >>> math.gcd(8,6)
    . e! M  h! V& |% k+ q) W4 k
  5. 2, H  z/ z& T& u6 h5 o: D$ a
  6. >>> math.gcd(40,20); x* c: g6 \7 {; g
  7. 20! B: M. q" w( ?% F% p- N
  8. >>> math.gcd(8,12)' Q9 m  H3 b$ U3 k* `- j
  9. 4
复制代码

8 i( d" g3 L* Dmath.hypot(x,y)  如果x是不是无穷大的数字,则返回True,否则返回False
/ f5 v0 h6 C8 n" ?" z) H: [
  1. #得到(x**2+y**2),平方的值$ S# g# \4 o9 z4 l+ ?" c% ]9 [
  2. hypot(x, y)7 `1 o( a8 w: j7 m3 p7 S4 N
  3. Return the Euclidean distance, sqrt(x*x + y*y).
    ! n; O& \2 o3 ?5 _5 U  @+ K
  4. >>> math.hypot(3,4)
    + q3 g4 o4 e$ k* h- X8 ?; |. ?9 \
  5. 5.0
    2 O! [* q  o/ L9 S0 `5 ?, h+ @
  6. >>> math.hypot(6,8)( a5 R+ J2 R) G: o7 Y
  7. 10.0
复制代码
! ]) l2 M5 u% M  A0 |; `" n" t
math.isfinite()  如果x是正无穷大或负无穷大,则返回True,否则返回False
/ a% J& Z/ w7 e8 j2 h
  1. #如果x是不是无穷大的数字,则返回True,否则返回False
    * y% t% ]% ^, D1 s3 r
  2. isfinite(x) -> bool5 R+ o; o  E( P7 l+ @( \, b
  3. Return True if x is neither an infinity nor a NaN, and False otherwise.. E, @, t4 C8 z9 k3 u+ W
  4. >>> math.isfinite(100)
    & a. }; H3 j5 ^7 f9 g
  5. True5 O$ F3 I( I4 d8 t
  6. >>> math.isfinite(0)# b/ ^- V* k; b$ P0 ?
  7. True
    6 d- g- A5 {+ g. `$ ^/ i& Q/ r
  8. >>> math.isfinite(0.1)
    9 C9 k( V! B! s% m. ~9 E
  9. True
    4 p7 O2 J9 z9 q
  10. >>> math.isfinite("a")3 r# [) N3 ^' f) j9 r" k
  11. >>> math.isfinite(0.0001)
    4 d0 `) g& Z& D! J' l2 B
  12. True
复制代码
4 n. H5 K6 W2 g. ?' O
math.isinf(x)  如果x是正无穷大或负无穷大,则返回True,否则返回False' ?1 z$ |3 m5 a% X+ ]1 I* {
  1. #如果x是正无穷大或负无穷大,则返回True,否则返回False% V5 F8 o' e. ?2 `: c
  2. isinf(x) -> bool
    ! W$ ~$ j! ^: \" A1 f" K
  3. Return True if x is a positive or negative infinity, and False otherwise.' \  s* _2 C5 o# n0 N
  4. >>> math.isinf(234)4 F& }. ?0 t! _2 j, Z( c. n
  5. False
    & {- f' S  X% ~
  6. >>> math.isinf(0.1)( `% q7 b) g6 V7 u4 H
  7. False
复制代码
3 v  ^6 O6 h- m. d' i4 m& Y; W
math.isnan(x)  如果x不是数字True,否则返回False& q" H) Q/ x6 @7 u( @1 v
  1. #如果x不是数字True,否则返回False
    8 I0 E0 L$ a/ O9 c
  2. isnan(x) -> bool( U& ^  m3 \) D4 [5 R
  3. Return True if x is a NaN (not a number), and False otherwise.
    : ]# T. s% w: c
  4. >>> math.isnan(23)
    6 l0 c! \* U( t7 {' \  {4 {  b
  5. False- l2 t$ E  c6 r9 i. x+ j  p) e% F0 h
  6. >>> math.isnan(0.01); G4 V3 L8 {" q! f4 S
  7. False
复制代码
5 y7 u0 E4 ]% p
math.ldexp(x,i)  返回x*(2**i)的值
. V: t% X& O8 Y- J
  1. #返回x*(2**i)的值
    6 W% ?# ], s& h
  2. ldexp(x, i). B. y% T- q8 D+ Q; o; G
  3. Return x * (2**i).
    $ Q2 j1 i4 m/ s8 [) I) ]  a& u
  4. >>> math.ldexp(5,5)4 H! E! g' P$ K" j4 m$ Z" D2 W! l
  5. 160.0( |5 i0 \3 F) d- q4 |
  6. >>> math.ldexp(3,5)
    0 _. u% z+ l% m5 I4 [3 O
  7. 96.0
复制代码

& B& ]/ A7 e# gmath.log10(x)  返回x的以10为底的对数
6 M) ^. E6 F4 \: U% W$ c8 Q$ B9 N
  1. #返回x的以10为底的对数" E" \4 q8 f0 B3 {1 w! T2 ]# ?
  2. log10(x)1 z' N+ I( _7 \5 s' W
  3. Return the base 10 logarithm of x.
    9 T( ^1 Q4 w& a' D$ v
  4. >>> math.log10(10)
    2 j7 e/ _2 l8 {$ \
  5. 1.0
    ) u/ u$ V- M; a3 ^( K& U3 \
  6. >>> math.log10(100)* D$ c* n: ?6 o! B
  7. 2.03 V: Y( d  q& a4 r
  8. #即10的1.3次方的结果为205 I# I+ A" n* @  D
  9. >>> math.log10(20)
    ; |" }/ p/ D  k7 A: A
  10. 1.3010299956639813
复制代码
9 P- x& \/ o7 }2 J
math.log1p(x)  返回x+1的自然对数(基数为e)的值
4 g! j8 E5 a: a+ l8 z6 k8 h/ a& [9 A
  1. #返回x+1的自然对数(基数为e)的值
    # X# c! x* {% M: m0 v5 B
  2. log1p(x)! p+ l# z, N; S6 d8 n% G
  3. Return the natural logarithm of 1+x (base e).
    5 t+ `% f- h) D7 |  U: ?7 u4 c/ m
  4. The result is computed in a way which is accurate for x near zero.& q" z& m4 R$ f* V
  5. >>> math.log(10)
    ) F9 @' Y( E5 I4 I
  6. 2.302585092994046
    - b( x8 q/ H! z& d5 H. P
  7. >>> math.log1p(10)
    ; ^- {# [3 K/ j/ ~) W7 j
  8. 2.3978952727983707  N8 m7 C/ `# d9 d, H5 q
  9. >>> math.log(11)0 `3 o1 Y2 c1 v/ ~  `
  10. 2.3978952727983707
复制代码

9 ]. P4 K7 ~$ I5 D% G. N8 V' ^math.log2(x)  返回x的基2对数
3 r- O% }7 L' d2 s
  1. #返回x的基2对数
    ' q4 f! n0 P; y) S& ~" ^
  2. log2(x)6 {; [: H# _4 L* \! p
  3. Return the base 2 logarithm of x.
    & h2 \" I& M5 Q4 W' Y, W# Q
  4. >>> math.log2(32), s8 ^/ ~$ s- ~, x- G/ c
  5. 5.0+ i4 K/ {0 g" h% n3 J/ i
  6. >>> math.log2(20)
    ) K. s' M" O- `3 E0 o
  7. 4.321928094887363
    / I7 j8 o9 i( @
  8. >>> math.log2(16)
    . \$ M4 P: }+ s% \
  9. 4.0
复制代码

% `  w$ H5 W  _" z  }math.modf(x)  返回由x的小数部分和整数部分组成的元组1 ?# A5 g+ B+ I. m6 S$ ~
  1. #返回由x的小数部分和整数部分组成的元组+ x( y, n0 Y, y, l0 `3 D5 G4 S
  2. modf(x)
    2 U- `4 ?* n  I" S! `0 X. K  r
  3. Return the fractional and integer parts of x.  Both results carry the sign( _' g' L4 D, g8 ?/ B
  4. of x and are floats.
    7 R1 D7 ]$ ?: v% Q
  5. >>> math.modf(math.pi)7 @0 z9 h+ k) {; M: H: W
  6. (0.14159265358979312, 3.0)
    / m3 z% t! B7 G7 w/ Q
  7. >>> math.modf(12.34); x" z6 F% }* R# ~
  8. (0.33999999999999986, 12.0)
复制代码
0 ^8 g3 |) ~4 Q+ k7 q. E1 \$ y
math.sqrt(x)  求x的平方根3 k. [5 r! D- x( w9 T) c- E: q
  1. #求x的平方根6 h* e8 ?" w3 B7 n: U& n
  2. sqrt(x)' X$ S7 m( t2 i/ z( q9 x% J
  3. Return the square root of x.& z7 z; V* B( [! Y: c
  4. >>> math.sqrt(100)
    $ q. K  z# C$ J6 s6 e
  5. 10.0
    " \# m* p/ ]" K7 z8 r) Q" C
  6. >>> math.sqrt(16)5 `0 `1 B9 G) k6 B$ @) y" J
  7. 4.0/ ~5 N8 ?7 A- n& g: l
  8. >>> math.sqrt(20)
    0 \1 R/ i. ]0 X. G5 X( [0 ~8 o( k
  9. 4.47213595499958
复制代码
$ z3 V* t# k4 _+ e6 C' c# ~
math.trunc(x)  返回x的整数部分
  1. #返回x的整数部分; g) Y4 j; [; s# J5 w4 f
  2. trunc(x:Real) -> Integral& h. M7 ~: h, x: k: F" v9 v7 n
  3. Truncates x to the nearest Integral toward 0. Uses the __trunc__ magic method.9 Y( A! Q2 h2 ^1 B7 k  l! M  h
  4. >>> math.trunc(6.789)
    ! F6 t1 D6 U1 g# ?  i- s/ Q6 Q0 [
  5. 6: ^: N" _5 X/ S
  6. >>> math.trunc(math.pi)
    3 ^0 C* u! m) c1 }, W8 K
  7. 3
    9 m: z* v1 p# m
  8. >>> math.trunc(2.567)4 D! G0 n( w* t. t( L5 E4 h; G
  9. 2
复制代码
:其中蓝色字体部分是高中需要掌握的基本语法

最新评论

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

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

GMT+8, 2025-11-29 16:28 , Processed in 0.111645 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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