马上注册,结交更多好友,享用更多功能,让你轻松玩转新大榭论坛!
您需要 登录 才可以下载或查看,没有账号?注册
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- >>> import math
7 j# E2 J* I1 K- E; C5 c - >>> math.sqrt(9)
4 ^% H) b7 N, l2 n - 3.0
复制代码 方法2:
9 a$ T4 c6 d+ V) V- >>> from math import sqrt
% d3 S: ~0 t/ _0 \# B; w+ u+ n - >>> sqrt(9)
# G. S c, m) X# n$ X - 3.0
复制代码
@! W; }' X) k 1 z+ } _* ^$ I- ^
math.e 表示一个常量
6 h4 i r- `3 z( l$ g- #表示一个常量
% `" [4 `0 t; V* l: [( c - >>> math.e
2 ~$ g" v2 c9 J' ~8 H* ~ - 2.718281828459045
复制代码
1 m5 Q0 _; e: ymath.pi 数字常量,圆周率
! L/ [ ~/ }( @4 E5 ^. v4 O9 b- #数字常量,圆周率
4 i0 ?4 M1 l/ |! G" I0 a# C - >>> print(math.pi)/ Y" q0 g9 n0 B* v! f4 M" `
- 3.141592653589793
复制代码 3 p1 N$ D& S0 w) `/ h* a O
math.ceil(x) 取大于等于x的最小的整数值,如果x是一个整数,则返回x1 ?% h4 c3 {! j% r1 H
- #取大于等于x的最小的整数值,如果x是一个整数,则返回x
2 |/ |4 k( c& S) k- Y! G' ^, D9 g+ h - ceil(x)
X$ N O8 J$ H4 ]6 w" Z - Return the ceiling of x as an int.
, h: W7 T" \4 M, U - This is the smallest integral value >= x. s% \# W) B2 U
- ) l% [9 y8 q# c1 h
- >>> math.ceil(4.01)6 O0 a0 [9 m. [* V3 {& j
- 5
6 C, T# B$ Q) b( F0 w* ^ - >>> math.ceil(4.99)
+ y3 _" o8 m% x - 5
! f+ e5 V( c5 z) k5 p - >>> math.ceil(-3.99)5 P% w* R5 f# M, \1 [- x' V
- -39 p X) m) f4 Q% O& g( d3 C! e
- >>> math.ceil(-3.01)
u7 H. x N0 d+ ]5 i - -3
复制代码 $ t! n/ a4 e; D& e, w( g
math.floor(x) 取小于等于x的最大的整数值,如果x是一个整数,则返回自身- c+ g; S5 w7 W J* E" H
- #取小于等于x的最大的整数值,如果x是一个整数,则返回自身
; f6 v% u M' h/ ~& r5 f; P - floor(x)
, F( s% x! n2 v5 P! m L - Return the floor of x as an int.
. y a( Q( u$ t Y1 H - This is the largest integral value <= x.) {& q! d9 a7 I- W* A3 g2 q
- >>> math.floor(4.1)
8 I S# y- V4 ~+ A3 H. X9 s - 4- Y) y# S: L% A' f; @: t! t2 A- z% C
- >>> math.floor(4.999)- n9 [0 Y; a% S& v3 B3 @1 E8 C
- 4, D2 Z: H: [- a, d, L
- >>> math.floor(-4.999)
. ~1 q* z' P0 R& E2 H - -5: G9 E. h+ C( ]( s$ }/ R* n" B, X5 U
- >>> math.floor(-4.01)
) j- S* [6 @ m$ o& B - -5
复制代码 . r! G9 O7 F+ n4 N+ ], B9 O& {
math.pow(x,y) 返回x的y次方,即x**y5 L7 ?, ?5 Y) D0 O
- #返回x的y次方,即x**y) P0 ]' B1 X: K5 v' K$ |# Q/ n" V
- pow(x, y)4 N- J) q* K( e. I9 G
- Return x**y (x to the power of y).0 H' _+ B# O% W& ]2 c% n
- >>> math.pow(3,4)
7 r$ I6 a* T: N# v7 |6 f7 M - 81.0
/ B+ ]" ^1 }6 M! d+ a6 K1 e - >>>
, k2 `1 S' x0 u( { - >>> math.pow(2,7)
5 z3 B! z! {) X! a - 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- #返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base), e) y [/ s& X9 [/ d
- log(x[, base])
/ u$ @1 Z" i( w: }0 R1 y7 H" Z - Return the logarithm of x to the given base.
' ^$ l2 Z- y) @2 C2 y- Q# B - If the base not specified, returns the natural logarithm (base e) of x." m; a9 S* f [
- >>> math.log(10)
A$ q( v4 h( C: Q - 2.302585092994046
8 \/ H% w! u/ H: C+ C) b/ Y - >>> math.log(11)
3 X. e4 \8 Y$ R7 ] - 2.3978952727983707% p2 `9 P6 g' i. S$ ~0 S r
- >>> math.log(20)6 x+ l8 F) {9 q) S( y+ X
- 2.995732273553991
复制代码 - ]3 X$ N X3 v5 L3 Y5 a
math.sin(x) 求x(x为弧度)的正弦值
6 P3 W' Y2 z- v0 {+ Y: b2 C- #求x(x为弧度)的正弦值7 ~9 C7 }3 c+ |/ t/ _2 s" S
- sin(x)
8 }0 Q" ^2 C+ S2 ^. E - Return the sine of x (measured in radians).
% K [6 I" L5 t: b$ }8 G: g - >>> math.sin(math.pi/4); H. Q8 q2 @) _, G7 Q) b
- 0.7071067811865475
: j# b; [) g3 d! e6 e - >>> math.sin(math.pi/2)( F& L, A% W2 s P, E" \
- 1.0% }4 i$ A3 z1 V: y, Z( k @2 y6 a
- >>> math.sin(math.pi/3). X. r; r4 K' D$ W. k7 F8 A+ K
- 0.8660254037844386
复制代码
; c/ L; A' C A8 zmath.cos(x) 求x的余弦,x必须是弧度* n$ K! H* [! d; G# j1 h! u
- #求x的余弦,x必须是弧度) J" S) ?3 C& Z+ N( j! K& ? I
- cos(x)
; {6 b! n* S( X( i - Return the cosine of x (measured in radians).$ P5 x% K6 A+ F2 t+ m) l
- #math.pi/4表示弧度,转换成角度为45度) {* e |7 L2 ?" k* g3 ^6 V1 d+ p
- >>> math.cos(math.pi/4)7 Q+ n5 U) e f
- 0.7071067811865476
T' R2 \ w. s3 n5 G6 j, Y - math.pi/3表示弧度,转换成角度为60度
X4 q1 M# j, f" N# K. R# h - >>> math.cos(math.pi/3)! E0 M" k9 x$ H: Y
- 0.5000000000000001
) W: k- B ]' o& d5 ]' L2 o. O - math.pi/6表示弧度,转换成角度为30度& D/ }0 l8 a7 @ B, Z- [. p
- >>> math.cos(math.pi/6)' h3 o& D/ ^5 c
- 0.8660254037844387
复制代码 " G- L+ e# a: T: `
math.tan(x) 返回x(x为弧度)的正切值3 y8 b$ _, O8 l1 l4 Q
- #返回x(x为弧度)的正切值
; h* @- U- N! w' B6 K* J8 o6 Q - tan(x)1 m" D. v9 `: o, r/ Z5 q+ J
- Return the tangent of x (measured in radians).
1 t) ~1 O& |" p6 L6 h2 U' t - >>> math.tan(math.pi/4)
4 d) b$ b! D( S4 i$ {6 r0 e' m - 0.9999999999999999
' a2 p9 z a: n2 {$ _ - >>> math.tan(math.pi/6)" l) O0 D- s4 W2 o
- 0.5773502691896257
8 ^( Q N K! @& O7 F# f' l9 p/ ` - >>> math.tan(math.pi/3)
2 C p. L% P6 C8 E) | } - 1.7320508075688767
复制代码
6 f1 m; X1 A) \' q. F3 tmath.degrees(x) 把x从弧度转换成角度1 u) ^+ B) T- e' B5 u/ V h
- #把x从弧度转换成角度, ?. C$ {' ]3 ]
- degrees(x)& Y. k9 l5 R7 U7 a0 J% c8 \! C
- Convert angle x from radians to degrees.
! e2 d8 ^+ p! s! R
5 R @, D' p3 d- >>> math.degrees(math.pi/4)
$ U. R6 `+ {/ i6 M) { - 45.0; B7 S' C3 L' t9 @7 x8 k
- >>> math.degrees(math.pi)" c" ~5 \, D! r& Z+ F
- 180.01 z' J! h& x8 k; {* U
- >>> math.degrees(math.pi/6)
( p3 J X. q5 j- ` - 29.999999999999996
! {% q1 E* b! q1 a - >>> math.degrees(math.pi/3)7 g8 p& O7 @. R- U0 X, ~: w
- 59.99999999999999
复制代码
7 k! j* n- v! Ymath.radians(x) 把角度x转换成弧度 o& r* K' Q" Z7 a
- #把角度x转换成弧度
: J0 J, V* V- F. Z7 M - radians(x)
7 F, T r* S* b# R# S - Convert angle x from degrees to radians.
9 }! w* p g* ~+ A0 \) V. x - >>> math.radians(45)
) a: ?2 M7 m8 S* G, m" r - 0.7853981633974483$ D; i" ]+ W& J* k4 S
- >>> math.radians(60)
; Y3 B+ z& O; I2 E# c - 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- #把y的正负号加到x前面,可以使用0+ I% n' t0 v9 Y5 y4 D9 v. s1 T+ Q7 a
- copysign(x, y)% T/ ]! N+ E, Y+ d* C
- Return a float with the magnitude (absolute value) of x but the sign ! V( x7 m, \1 O8 e2 }9 L: Z" f, @# Y
- of y. On platforms that support signed zeros, copysign(1.0, -0.0) 1 W' q, ^3 L2 y# ?) y
- returns -1.0.* o' a& y$ ~: H& o. U
- 5 [* N9 L1 E% M* m+ l; Z! Z! V
- >>> math.copysign(2,3)0 f+ Z4 S* t; [! l w* A
- 2.0
& K; V' V" X+ \4 C6 n% p# D5 r - >>> math.copysign(2,-3)
8 k; e( r& b! z' _ - -2.0
9 m# V+ b9 M7 b9 b- R3 K - >>> math.copysign(3,8)7 _- ^3 H( P7 _1 @! z% T' V! B
- 3.0
! s) q4 S; F: ?9 l0 F - >>> math.copysign(3,-8)
2 e: z: R' k1 B, J - -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
- #返回math.e,也就是2.71828的x次方8 u* F6 L- F1 ~
- exp(x)% v5 ^9 e' w" d; l% Q, c
- Return e raised to the power of x.
/ [' y4 p9 i- p/ m3 C - ) G* V+ j' j+ {( l( f) G
- >>> math.exp(1)
8 ]9 b' _0 r. n4 V, w# R - 2.718281828459045
1 l0 ] ?1 h1 G - >>> math.exp(2)1 Z+ N: f- s/ _5 I k! L9 q
- 7.389056098930650 H, Z2 V) t8 T0 ~) c- ]( G
- >>> math.exp(3)7 j% K+ z* k/ f/ W6 A/ _
- 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- #返回math.e的x(其值为2.71828)次方的值减1
/ B- Q9 m' m# k4 L6 F - expm1(x)
* g/ Z& D) `! O7 o3 c - Return exp(x)-1.- n$ |, g; t+ ]9 \& M
- This function avoids the loss of precision involved in the direct evaluation of exp(x)-1 for small x.) ~7 ]$ ]+ y7 N! s/ L
: j" m+ J! _1 Y" q2 G) L- >>> math.expm1(1)
" A; w( e4 J* x/ C- c' @1 b) T - 1.718281828459045) H: R& L0 e/ T! b$ e. \4 {
- >>> math.expm1(2)0 M. k/ l3 e. B2 T& J
- 6.38905609893065
! C$ ]+ ?2 V; O" A3 M - >>> math.expm1(3)
8 ^5 _3 F2 h# i- N7 t9 S% a5 [ - 19.085536923187668
复制代码
* N/ V& f$ [1 zmath.fabs(x) 返回x的绝对值
: M2 v. x, G9 d- #返回x的绝对值. K* M7 h" t. T7 i, o5 k
- fabs(x)
6 `, f( k% x% }8 t7 E1 h- b3 d2 V - Return the absolute value of the float x.1 R$ S) ^& n! R+ r
4 K& q7 |! q+ b. j- >>> math.fabs(-0.003)
1 u" i8 q V* T/ S, c2 x - 0.0035 U; Q l# T2 S: h# L/ [
- >>> math.fabs(-110)6 I$ b: ~/ ]0 }, d
- 110.0
, s% K& Q8 Y( w! L0 { - >>> math.fabs(100)
- K. g( x" P' Z8 ~$ n8 I3 H - 100.0
复制代码 : a! [' A3 h% p' J |, L
math.factorial(x) 取x的阶乘的值
5 q# N# G/ ~- e4 v y# R3 x, f' @- #取x的阶乘的值
# ^' h3 X( H/ @. g n - factorial(x) -> Integral/ M4 Z" \/ H: d+ o, u
- Find x!. Raise a ValueError if x is negative or non-integral.7 I, m# h- [/ R1 i
- >>> math.factorial(1)
! L. t5 y, U% O$ @" ~: g" g - 1
$ A) o& j9 p$ H/ R" G1 m6 x - >>> math.factorial(2)- Q2 q, K# f9 I5 L' U4 r5 @
- 2
- q$ O" s: p, E- K - >>> math.factorial(3)* Y8 V7 F( h* P6 t: @2 ]
- 65 D! F: w$ @6 I4 a
- >>> math.factorial(5)
% n1 @" M' `/ ]+ U6 ~* _ - 120, R0 C" O9 U- ^- i
- >>> math.factorial(10)
' f4 ~5 ?. W+ t6 `9 V! d) a - 3628800
复制代码 ' w: D! q) \: @: L
math.fmod(x,y) 得到x/y的余数,其值是一个浮点数+ g9 @4 u* g4 V& g
- #得到x/y的余数,其值是一个浮点数
$ t. w* P+ H8 ?7 V; L - fmod(x, y). J6 Z/ Q6 c+ [! l
- Return fmod(x, y), according to platform C. x % y may differ.
/ Q% b4 L( h( e3 M' M8 T - >>> math.fmod(20,3)0 u) o& a9 d x& ]% M
- 2.0% Y5 H$ ?/ m' v+ t5 o. [
- >>> math.fmod(20,7)
# y: H( a! P- _" Q: `, i- P: L* _ - 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
- #返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围,& _ p! G5 {5 f0 F+ p. q
- #2**e的值在这个范围内,e取符合要求的最大整数值,然后x/(2**e),得到m的值, d- ]" d9 m" }$ q
- #如果x等于0,则m和e的值都为0,m的绝对值的范围为(0.5,1)之间,不包括0.5和1
5 E8 ]: j5 U9 e; v: i - frexp(x)0 z# K: l( z- @$ S% W1 o
- Return the mantissa and exponent of x, as pair (m, e).
# F: z: b2 Z% x8 Y/ W# d - m is a float and e is an int, such that x = m * 2.**e.
7 h+ l( ?, ^" g - If x is 0, m and e are both 0. Else 0.5 <= abs(m) < 1.0.
; q: t; h6 Q# f, V U% \ - >>> math.frexp(10)
! I2 f. m, ~0 o, x5 V% s- X, E: S - (0.625, 4)
7 b6 l/ _( c( g r - >>> math.frexp(75)
4 E6 T0 [9 q* [8 b7 J& E - (0.5859375, 7)
3 W$ Z3 I$ R0 a+ j7 {+ _1 G- D9 y# K - >>> math.frexp(-40)
6 G; b! p* x& l1 U5 y1 J$ [1 v - (-0.625, 6)% @% Z# D) y$ P" ` k0 P
- >>> math.frexp(-100)' C& u" @9 y ~/ [ d
- (-0.78125, 7)
6 Y# b, w* y! E/ V7 w$ B9 H1 y - >>> math.frexp(100)
$ x4 c; v; }' F9 P5 _& J- ] - (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
- #对迭代器里的每个元素进行求和操作! i/ _4 S$ y- C! o
- fsum(iterable). ^! ]: r* I& o% V$ H
- Return an accurate floating point sum of values in the iterable.! q& i! `, K* W- l( r
- Assumes IEEE-754 floating point arithmetic.
) ] |8 P/ `% P7 j - >>> math.fsum([1,2,3,4])
) `5 X3 H& E% G) c/ y0 v$ ` - 10.0
% R/ T( x( L6 t" i3 u, a - >>> math.fsum((1,2,3,4))
: v: ]! H& y5 ]0 ?0 H" I) z - 10.0* |1 n0 C( Y* T. y3 x( q
- >>> math.fsum((-1,-2,-3,-4))8 A! b; {9 @4 I1 I4 {) f
- -10.0
( C* G4 _2 O8 m" O - >>> math.fsum([-1,-2,-3,-4])
6 }+ M$ _8 i& m4 W - -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
- #返回x和y的最大公约数/ p) m: L+ P5 K) L
- gcd(x, y) -> int
. l2 g8 ?' N) k3 H1 E - greatest common divisor of x and y5 u2 m, x3 ?0 ^2 D
- >>> math.gcd(8,6)7 v+ M0 k/ t" z( J/ \/ o+ U
- 2
2 |4 \, U% I; p% Q; o0 A- \ - >>> math.gcd(40,20)' ?. ?; A, o) t, Q" G: N q+ ^, R
- 20
6 n% A/ e/ @5 M3 U$ t) f4 F - >>> math.gcd(8,12)
5 V$ J. [6 h7 z( c: u5 L I - 4
复制代码 4 Q X) N4 j9 l; L
math.hypot(x,y) 如果x是不是无穷大的数字,则返回True,否则返回False4 z6 i% e$ m* I6 j* W
- #得到(x**2+y**2),平方的值9 F+ a$ D* D, M& _2 W
- hypot(x, y)
- t" F2 G$ t! P3 b) E( C; ]% F' G - Return the Euclidean distance, sqrt(x*x + y*y).
+ H! T: m" k/ B$ Y( N8 S: Y' B - >>> math.hypot(3,4)
8 r7 W2 H' S5 r: v/ [* O - 5.0/ Z' M& ^% o. T4 t/ u
- >>> math.hypot(6,8)1 \% P% @) U; U$ \4 k
- 10.0
复制代码
/ C3 \& a, U9 l2 \" Wmath.isfinite() 如果x是正无穷大或负无穷大,则返回True,否则返回False% x9 m( X: J" Q# J/ e9 D$ ~6 X
- #如果x是不是无穷大的数字,则返回True,否则返回False
' Q6 J# Z% C) U7 X" W! I9 W& c - isfinite(x) -> bool: }1 x- {7 s( s7 a
- Return True if x is neither an infinity nor a NaN, and False otherwise.
4 G, P: n8 ~# |0 s/ w8 Q' x - >>> math.isfinite(100)/ p& T1 R4 R; M" e
- True* O8 T- c5 @3 R3 S g9 T+ U! y
- >>> math.isfinite(0)% z7 c" n$ q/ c
- True
* I0 C/ x3 b+ H* S - >>> math.isfinite(0.1)1 U, J5 O2 s! m% Z& }* p
- True1 h; a" C: V/ c) Y6 M
- >>> math.isfinite("a"); X4 Y- `6 y% C( n# b/ I* w D1 Y
- >>> math.isfinite(0.0001)
/ r2 _' P2 _) z* H) R - True
复制代码 X' w W! A }# D; G; R9 |+ F
math.isinf(x) 如果x是正无穷大或负无穷大,则返回True,否则返回False
3 q) h& f% ?) p0 y- #如果x是正无穷大或负无穷大,则返回True,否则返回False, _! M' P* m O
- isinf(x) -> bool
9 Z0 `3 F D( |8 j; g# C - Return True if x is a positive or negative infinity, and False otherwise.
+ R4 L0 h7 h6 [6 v* ~ - >>> math.isinf(234)# w5 \! _. @2 E$ _& S
- False
8 z, h- V- H- f; \1 B: Y, O& \9 B - >>> math.isinf(0.1)9 u4 R* O5 Y# ^+ ^" B& b
- 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- #如果x不是数字True,否则返回False1 o5 j5 }& {, u# t$ R
- isnan(x) -> bool9 b3 n/ K# i3 c* ~* i8 ]& c
- Return True if x is a NaN (not a number), and False otherwise.
; Y d7 o" W4 q3 X/ T# T2 t - >>> math.isnan(23)
0 W# |) }8 a5 M I - False
8 z( Z" a" k5 i+ y) w _ - >>> math.isnan(0.01)
" @1 O5 l0 n3 `( ?' m5 v0 | - False
复制代码 0 | @! u% P% O: h& V/ q! o
math.ldexp(x,i) 返回x*(2**i)的值# N5 w2 Z: x$ @- w! ]2 F" }
- #返回x*(2**i)的值' l# }* e, s- n# z( Z' {
- ldexp(x, i)# [0 M: n' M2 W) E' I- [
- Return x * (2**i).7 e3 U+ y+ g; w( W d4 v
- >>> math.ldexp(5,5)
0 [6 J) Q/ d8 D; v( S8 w - 160.00 y# y8 y& m& B. u& p: }
- >>> math.ldexp(3,5)% J0 m3 k" l4 ^2 I+ U* q
- 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
- #返回x的以10为底的对数
) q4 O3 j5 Y9 {- A% J( t - log10(x). d) s9 j: k: m7 s- R& [, k
- Return the base 10 logarithm of x.
4 n! K5 K7 c" E0 m - >>> math.log10(10). O3 o( D0 Y) ]- Q1 C
- 1.0
6 ?; |# a: t5 J* ] - >>> math.log10(100)* M" e3 E8 S$ x
- 2.0% }( Y( \: o! q
- #即10的1.3次方的结果为20
. v! F9 V6 W T# X- u0 |% S! @ - >>> math.log10(20)
4 j1 [8 P5 z8 X7 L - 1.3010299956639813
复制代码 , k1 w7 U# s' D5 n0 w- u/ ]+ m5 f
math.log1p(x) 返回x+1的自然对数(基数为e)的值
2 d4 z7 i+ A5 I- #返回x+1的自然对数(基数为e)的值4 G: E$ Y( j" Z: }6 ]
- log1p(x)7 E2 K: T* z0 Z) b2 R s
- Return the natural logarithm of 1+x (base e).8 h5 `, j' W, g+ \
- The result is computed in a way which is accurate for x near zero.3 x2 n X3 |& O3 \3 j h
- >>> math.log(10)
1 u/ c4 G! _ H8 y7 g - 2.302585092994046
! _/ ^7 [) D* Q6 X5 _6 u - >>> math.log1p(10)
& Z1 n8 U1 l0 C Y/ k - 2.39789527279837073 \3 F5 n1 k1 m* |8 d1 o, G1 s: g
- >>> math.log(11)
1 T8 J S% B. E2 v. z) B. X1 ` - 2.3978952727983707
复制代码 / Z9 `$ h3 u6 e
math.log2(x) 返回x的基2对数: W2 w! o/ Q. e' F
- #返回x的基2对数
3 e7 \. M6 c0 ] - log2(x)6 L9 d" F$ s6 E4 N9 J. |$ M% X1 A
- Return the base 2 logarithm of x.( U* z# G( |# G( Q! L1 A5 h
- >>> math.log2(32)' F' g% H% R0 J Z5 H
- 5.0
; k# N$ V" f8 d. ?1 K. _2 } - >>> math.log2(20)$ a5 Y4 `% g. r4 E6 n" Q
- 4.321928094887363 g1 w$ s6 p! Q. i# R
- >>> math.log2(16)
7 W( E/ T. x/ {. O* t' ?& S - 4.0
复制代码 9 w- W$ s9 K9 _- d
math.modf(x) 返回由x的小数部分和整数部分组成的元组' B0 H' G6 s% e7 S8 Q9 h3 @+ E2 F
- #返回由x的小数部分和整数部分组成的元组
. w* K4 d* A* u. e3 [( T - modf(x)
+ }( N+ a* Q; t3 e - Return the fractional and integer parts of x. Both results carry the sign3 c( ~) L5 ]% g' y0 y% V
- of x and are floats.
; a2 K3 V, n& [0 P% U1 U. L5 t - >>> math.modf(math.pi)
2 u/ V( k( W6 j - (0.14159265358979312, 3.0)+ V$ I; t; z) v: {( M, v3 U
- >>> math.modf(12.34)
9 k% ^2 g8 K4 a* |+ p7 f8 C - (0.33999999999999986, 12.0)
复制代码 * f" L2 g f: f1 ?% e
math.sqrt(x) 求x的平方根
/ D# D; J2 g o- #求x的平方根+ O: t, E2 p2 R
- sqrt(x)
3 P ^$ h9 t6 ?% i- b - Return the square root of x.$ a3 M* o. A: B; \* y
- >>> math.sqrt(100)5 g: T( g7 b' M) N- }/ j
- 10.02 C& H# H4 J) n7 M3 v" |" _! e
- >>> math.sqrt(16)5 m; F( d; }; Q- }" E; a+ f& E
- 4.0
1 M2 u8 g6 c9 X - >>> math.sqrt(20), I8 ^8 u P4 t4 L7 W2 E; M
- 4.47213595499958
复制代码 * n6 u, D0 c" l' W' l5 o% n
math.trunc(x) 返回x的整数部分- #返回x的整数部分$ A6 u! p5 H: G& g) h7 b
- trunc(x:Real) -> Integral: Q+ H$ q, v6 [1 N
- Truncates x to the nearest Integral toward 0. Uses the __trunc__ magic method.
2 i3 O4 o+ j/ [" I1 o - >>> math.trunc(6.789)4 [/ \3 c* q& ~% ?7 N O* u/ G
- 67 k3 C6 b/ p6 |# p8 K
- >>> math.trunc(math.pi)
" H5 a. s3 u% j0 K4 o1 n) ?3 P - 3
2 F, s: N3 c8 t% X+ _$ m/ k; D - >>> math.trunc(2.567)
N3 B' |- J4 V - 2
复制代码 注:其中蓝色字体部分是高中需要掌握的基本语法 |
|