python之Number,,1、Python n


1、Python number数字

Python Number 数据类型用于存储数值。

数据类型是不允许改变的,这就意味着如果改变 Number 数据类型的值,将重新分配内存空间。

创建一个number数据值,改变数据的值,查看内存地址已发生改变:

>>> num = 123>>> id(num)8743872>>> num = 456>>> id(num)13991590095640

使用del语句删除number对象,可以删除多个用‘,‘逗号分隔:

>>> num = 123>>> num1 =888>>> del num,num1

2、python支持四种不同的数据类型:

整形(int)-通常被称为整型或整数,是正数或者负整数。长整型(long integers)-无限大小的整数,整数最后使用大写或小写的L表示。浮点型(floating point real values)-浮点型由整数部分和小数部分组成。复数(complex numbers)-复数由实数部分和虚数部分构成,可以使用a+bj,或者complex(a,b)表示,复数的a和b部分都是浮点型.
长整型的取值范围:python2.7版本中长整型的取值范围为-2**63-1次方至2**63次方python3中没有long类型,使用int表示长整型In [1]: 2**63-1Out[1]: 9223372036854775807LIn [2]: lo1 = 9223372036854775807In [3]: type(lo1)Out[3]: intIn [4]: lo2 = 9223372036854775808In [5]: type(lo2)Out[5]: longIn [6]: log8 = -2**62In [7]: type(log8)Out[8]: intIn [9]: log8 = -2**63-1In [10]: type(log8)Out[11]: long创建复数:>>> complex1 = 1.2+3.4j>>> type(complex1)<class ‘complex‘>>>> complex2 = complex(0.3,3.2)>>> print(complex1,complex2)(1.2+3.4j) (0.3+3.2j)

3、python number类型转换

内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值

>>> nu1 = 89>>> nu2 = float(nu1)  #转换浮点型>>> type(nu2)<class ‘float‘>>>> nu3 =complex(nu2)  #转复数>>> type(nu3)<class ‘complex‘>>>> print(nu3)(89+0j)>>> nu4 = int(nu2)  #转整数>>> type(nu4)<class ‘int‘>>>> nu5 =str(nu4) #转字符>>> type(nu5)<class ‘str‘>
str(x )                 将对象 x 转换为字符串  repr(x )                将对象 x 转换为表达式字符串  eval(str )              用来计算在字符串中的有效Python表达式,并返回一个对象  tuple(s )               将序列 s 转换为一个元组  list(s )                将序列 s 转换为一个列表  chr(x )                 将一个整数转换为一个字符  unichr(x )              将一个整数转换为Unicode字符  ord(x )                 将一个字符转换为它的整数值  hex(x )                 将一个整数转换为一个十六进制字符串  oct(x )                 将一个整数转换为一个八进制字符串

4、python数字内置函数,数字处理模块math

>>> import math   #数字处理模块>>> help(math.ceil)  #查看帮助>>> dir(math)   #打印所有方法[‘__doc__‘, ‘__file__‘, ‘__loader__‘, ‘__name__‘, ‘__package__‘, ‘acos‘, ‘acosh‘, ‘asin‘, ‘asinh‘, ‘atan‘, ‘atan2‘, ‘atanh‘, ‘ceil‘, ‘copysign‘, ‘cos‘, ‘cosh‘, ‘degrees‘, ‘e‘, ‘erf‘, ‘erfc‘, ‘exp‘, ‘expm1‘, ‘fabs‘, ‘factorial‘, ‘floor‘, ‘fmod‘, ‘frexp‘, ‘fsum‘, ‘gamma‘, ‘hypot‘, ‘isfinite‘, ‘isinf‘, ‘isnan‘, ‘ldexp‘, ‘lgamma‘, ‘log‘, ‘log10‘, ‘log1p‘, ‘log2‘, ‘modf‘, ‘pi‘, ‘pow‘, ‘radians‘, ‘sin‘, ‘sinh‘, ‘sqrt‘, ‘tan‘, ‘tanh‘, ‘trunc‘]>>> nu1 = 12.34>>> math.ceil(nu1)   #取上入整数13>>> math.exp(nu1)  #返回e的nu1次幂,e为定义的常量228661.9520568098>>> math.fabs(nu1) #返回绝对值12.34>>> math.floor(nu1) #返回数字的下舍整数部分12>>> math.modf(nu1) #返回小数部分与整数部分(0.33999999999999986, 12.0)>>> math.sqrt(nu1) #返回平方根3.5128336140500593>>> math.e    #模块定义的常量e2.718281828459045>>> math.pi   #模块定义的常量pi3.141592653589793内置函数:>>> abs(11.2)   #返回绝对值11.2>>> max(12,24)  #最大值24>>> min(12,24)  #最小值12>>> pow(2,4)   #2**4幂次方16>>> round(1.245,3)  #返回值的四舍五入值,3为定义到小数第几位1.245>>> round(1.245)   #默认为01

5、python随机数模块random

>>> import random    #导入模块>>> random.random()   #获取0到1之间的随机数0.1781419039493949>>> random.random()0.914421842727102>>> random.uniform(10,20)  #生成10,20之间的浮点数19.774883012515218>>> random.uniform(10,20)11.654111952867027>>> random.randint(10,20)  #生成指定范围内的整数18>>> random.randint(10,20)11>>> random.randrange(1,100,8)  #从指定范围内按指定基数递增获取随机数33>>> random.randrange(1,100,8)17>>> random.randrange(1,100,8)33>>> random.choice([1,2,3,4,5]) #从序列元素中随机获取元素,只能是有序类型2>>> random.choice([1,2,3,4,5])1>>> random.choice([1,2,3,4,5])2>>> random.choice(‘abcd‘)‘d‘>>> random.choice(‘abcd‘)‘a‘>>> random.choice(‘abcd‘)‘c‘>>> a = [1,2,3,4,5]  #将一个列表元素打乱>>> random.shuffle(a)>>> a[1, 2, 3, 5, 4]>>> random.shuffle(a)>>> a[2, 5, 4, 3, 1]>>> random.sample(a,2)  #从指定序列中随机获取N个元素,生成新对象[5, 2]>>> random.sample(a,2)[5, 4]>>> random.sample(a,3)[3, 4, 1]>>> random.sample(a,5)[5, 1, 4, 2, 3]

2017-09-2412:27:23?

python之Number

评论关闭