写点什么

【Python 基础学习】- 数据类型 -- 数字类型

  • 2022-11-25
    北京
  • 本文字数:1643 字

    阅读完需:约 5 分钟

【Python 基础学习】-数据类型--数字类型

6、Python 数据类型-数字类型

数字类型介绍 整数 小整数对象池、浮点数、复数、布尔类型、空值、数据计算

数字类型

数字类型是不可变类型。所谓的不可变类型,指的是类型的值一旦有不同了,那么它就是一个全新的对象。数字 1 和 2 分别代表两个不同的对象,对变量重新赋值--个数字类型,会新建一一个数字对象。


还是要强调一下 Python 的变量和数据类型的关系,变量只是对某个对象的引用或者说代号、名字、调用等等,变量本身没有数据类型的概念。只有 1,[1, 2], "hello"这一类对象才具有数据类型的概念。


Python 支持三种不同的数字类型,整数、浮点数和复数。

整数

通常被称为整型,数值为正或者负,不带小数点。


表示数字的时候,有时我们还会用八进制或十六进制来表示:十六进制用 0x 前缀和 0-9,a-f 表示, 例如: 0xff00 八进制用 0o 前缀和 0-7 表示,例如 0o45


python 的整数长度为 32 位,并且通常是连续分配内存空间的。


>>> a = 1>>> id(a)504917008  # 所占内存空间地址>>> b = 2>>> id(b)504917040  # 和a的相差32>>> 
复制代码

小整数对象池

python 初始化的时候会自动建立一个小整数对象池,方便我们调用,避免后期重复生成!这是一个包含 262 个指向整数对象的指针数组,范围是-5 到 256。 比如整数 10,即使我们在程序里没有创建它,其实在 Python 后台已经悄悄为我们创建了。


>>> id(b)504917040>>> id(10)504917296>>> id(11)504917328>>> id(-5)504916816>>> id(-6)48328656   # 很明显和-5的不一样>>> id(-4)504916848 # 和-5的连续 相差32>>> id(257)48327440>>> 
复制代码

整数缓存区

>>> a = 100>>> id(a)504920176>>> del a  # 删除>>> aTraceback (most recent call last):  File "<pyshell#15>", line 1, in <module>    aNameError: name 'a' is not defined>>> b = 100>>> id(b)504920176  # b 和 a  的内存空间地址是一样的>>> 
复制代码

浮点数

浮点数也就是小数,如 1.23, 3.14, -9.01, 等等。但是对于很大或很小的浮点数,- 般用科学计数法表示,把 10 用 e 替代,1.23x10^9 就是 1.23e9, 或者 12.3e8, 0.000012 可以写成 1 .2e-5,等等。


>>> a = 10>>> float(a)10.0>>> b = 1.1>>> int(b)1>>> c = 1.5>>> int(b)1            #不遵循四舍五入,只取整数
复制代码

复数

复数由实数部分和虛数部分构成,可以用 a + bj ,或者 complex(a,b)表示,复数的实部 a 和虚部 b 都是浮点。

数据计算

函数               返回值(描述)abs(x)            返回数字的绝对值,如abs(-10) 返回10ceil(x)           返回数字的上入整数,如math. ceil(4.1)返回5exp(x)            返回e的x次幂(ex),如math.exp(1)返回2. 718281828459045fabs(x)           返回数字的绝对值,如math. fabs(-10)返回10.0floor(x)          返回数字的下舍整数,如math. floor(4.9)返回4log(x)            如math. log(math .e )返回1.日, math.1og(100, 10)返回2.0log10(x)          返回以10为基数的x的对数,如math. log10(100)返回2.0max(x1, x2,...)   返回给定参数的最大值,参数可以为序列。min(x1, x2, ...)  返回给定参数的最小值,参数可以为序列。modf(x)           返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。Pow(x, y)         x**y运算后的值。round(x [,n])     返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。sqrt(x)           返回数字x的平方根acos(x)           返回x的反余弦弧度值。asin(x)           返回x的反正弦弧度值。atan(x)           返回x的反正切弧度值。atan2(y, x)       返回给定的x及Y坐标值的反正切值。cos(x)            返回x的弧度的余弦值。hypot(x, y)       返回欧几里德范数sqrt(xx + yy)sin(x)            返回的x弧度的正弦值。tan(x)            返回x弧度的正切值。degrees(x)        将弧度转换为角度,如degrees (math.pi/2),返回90.0radians(x)        将角度转换为弧度
复制代码


>>> import math>>> abs(-1)1>>> math.ceil(4.1)5>>> math.floor(4.5)4>>> 
复制代码


发布于: 刚刚阅读数: 3
用户头像

一边做一边变得优秀,加油呀 2022-09-19 加入

大家好,我是小鱼新人来报道哈。

评论

发布
暂无评论
【Python 基础学习】-数据类型--数字类型_11月月更_度假的鱼🐟_InfoQ写作社区