详解python Number数据类型

前几篇文章介绍过python中的数据类型,今天整理下数值类型以及常用的几个函数:

一、Number

  Number数据类型为不可变数据类型,改变值的话,会重新分配内存空间

  可以使用del语句删除Number对象引用

var1 = 1
del var1

  也可以同时删除多个对象

del var1,var2

  

二、几种不同的数值类型

  整形(无小数点)、长整型(无限大小的整数,结尾带L)、浮点型(整数部分+小数部分,也可以用科学计数法)、复数(实数+虚数,可以用a+bj或complex(a,b),其中a和b都是浮点型)

 

三、数值类型转换

  数值类型间转换(int(),long(),float(),complex())

  数值类型同其他数据类型转换(str(),repr(),tuple(),list(),chr(),unichr(),ord(),hex(),oct())

 

四、相关的模块

1、math & cmath模块,使用前先导入

import math
import cmath

 

五、相关函数

保证效率,粘贴现成的表格:

函数返回值 ( 描述 )
abs(x) 返回数字的绝对值,如abs(-10) 返回 10
ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5
cmp(x, y) 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
exp(x) 返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
fabs(x) 返回数字的绝对值,如math.fabs(-10) 返回10.0
floor(x) 返回数字的下舍整数,如math.floor(4.9)返回 4
log(x) 如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x) 返回以10为基数的x的对数,如math.log10(100)返回 2.0
max(x1, x2,...) 返回给定参数的最大值,参数可以为序列。
min(x1, x2,...) 返回给定参数的最小值,参数可以为序列。
modf(x) 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
pow(x, y) x**y 运算后的值。
round(x [,n]) 返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。
sqrt(x) 返回数字x的平方根

 python的随机数函数

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

其他如三角函数不再列举,感兴趣可以自己查阅相关文档

 

有个示例感觉不错,可以参考下:

将整数转化为二进制字符串

1、自己写实现函数(很明显比较复杂,而且也有缺点):

# -*- coding: UTF-8 -*-
def fbin(n):
    if n == 0 :
        return '0'
    else:
        return fbin(n/2) + str(n%2)
    
print fbin(5)

2、 lambda函数:

binary = lambda n : '0' if n==0 else binary(n/2) + str(n%2)
print binary(5)

3、使用bin函数

print bin(5).replace('0b','')

4、使用format函数

print '{:b}'.format(10)

 

posted on 2018-11-14 10:45  testzhangcs  阅读(1271)  评论(0编辑  收藏  举报

导航