Python 数字(函数)

Python支持4种不同数值类型:

  • 整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。
  • 长整型(long integers) - 无限大小的整数,整数最后是一个大写或小写的L。
  • 浮点型(floating point real values) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)
  • 复数(complex numbers) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。

 Python Number 类型转换:

int(x [,base ])
x转换为一个整数
long(x [,base ])
x转换为一个长整数
float(x )
x转换到一个浮点数
complex(real [,imag ])
创建一个复数
str(x )
将对象 x 转换为字符串
repr(x )
将对象 x 转换为表达式字符串
eval(str )
用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s )
将序列 s 转换为一个元组
list(s )
将序列 s 转换为一个列表
chr(x )
将一个整数转换为一个字符
unichr(x )
    将一个整数转换为Unicode字符
hex(x )
将一个整数转换为一个十六进制字符串
ord(x )
将一个字符转换为它的整数值
oct(x )
将一个整数转换为一个八进制字符串

 


Python数学函数:

   函   数 说    明
 abs(x)  返回数字的绝对值,如abs(-10) 返回 10,如果参数是一个复数,就返回复数的模,即复数的实部与虚部的平方和的平方根
 ceil(x)  返回数字的上入整数,如math.ceil(4.1) 返回 5。(要导入math模块)
 cmp(x, y)  如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。(Python 3.X 的版本中已经没有 cmp 函数,如果需要实现比较功能,需要引入 operator 模块)
 coerce()  返回一个包含类型转换完毕的两个数值的元素元组。(仅Python2)
 divmod(x)  把除和求余运算结合起来,返回一个包含商和余数的元组。即divmod(n1,n2)的结果为(n1//n2,n1%n2)。(Python2中该函数支持复数,但Python3中不再支持复数)
 exp(x)  返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045。(需要导入math模块)
 fabs(x)  返回数字的绝对值,如math.fabs(-10) 返回10.0。(需要导入math模块)
 floor(x)  返回数字的下舍整数,如math.floor(4.9)返回 4。(需要导入math模块)
 log(x)  返回x的自然对数,如math.log(math.e)返回1.0,math.log(100,10)返回2.0。(需要导入math模块)
 log10(x)  返回以10为基数的x的对数,如math.log10(100)返回 2.0。(需要导入math模块)
 max(x1, x2,...)  返回给定参数的最大值,参数可以为序列。
 min(x1, x2,...)  返回给定参数的最小值,参数可以为序列。
 modf(x)  返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示,如math.modf(100.12) : (0.12000000000000455, 100.0)。(需要导入math模块)
 pow(x, y[, z])  x**y 运算后的值。即x的y次方。可以接受第三个参数z,结果等效于pow(x,y) %z。
 round(x [,n])  返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。
 sqrt(x)  返回数字x的平方根,如 math.sqrt(100) : 10.0。(需要导入math模块)

coerce():

>>>coerce(2L,33)
(2L,33L)
>>>coerce(2L,33.0)
(2.0,33.0)>>>coerce(2+3j,33.0)
((2+3j),(33+0j))

cmp(x, y) 函数在 python3.x 中不可用,可用以下函数替代:

operator.lt(a, b)           #lt(a,b) 相当于 a <  b
operator.le(a, b)           #le(a,b) 相当于 a <= b
operator.eq(a, b)           #eq(a,b) 相当于 a == b
operator.ne(a, b)           #ne(a,b) 相当于 a != b
operator.ge(a, b)           #gt(a,b) 相当于 a >  b
operator.gt(a, b)           #ge(a,b) 相当于 a >= b

 


 Python随机数函数:

函    数 说    明
choice(seq) 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。(要导入random模块)
randrange ([start,] stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1。(需要导入 random 模块)
random() 随机生成下一个实数,它在[0,1)范围内。random.random()。(需要导入 random 模块)
seed([x]) 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。(需要导入 random 模块)
shuffle(lst) 将序列的所有元素随机排序,random.shuffle(list)。(需要导入 random 模块)
uniform(x,y) 随机生成下一个实数,它在[x,y]范围内。random.uniform(x,y)(需要导入 random 模块)

randrange ([start,] stop [,step]):

#!/usr/bin/python
import random
# 输出 100 <= number < 1000 间的偶数 print "randrange(100, 1000, 2) : ", random.randrange(100, 1000, 2)
# 输出 100 <= number < 1000 间的其他数 print "randrange(100, 1000, 3) : ", random.randrange(100, 1000, 3)

 


 range()函数:默认情况下,range() 的起始值是 0。

>>> range(1,5)        # 代表从1到5(不包含5)
[1, 2, 3, 4]
>>> range(1,5,2)      # 代表从1到5,间隔2(不包含5)
[1, 3]
>>> range(5)          # 代表从0到5(不包含5)
[0, 1, 2, 3, 4]
>>> for i in range(5) :
...     print(i)
... 
0
1
2
3
4

 

 

 

 

posted @ 2017-08-05 11:29  VVVinson  阅读(1289)  评论(0编辑  收藏  举报