python 数据类型之数字
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 数据类型之数字相关的知识,希望对你有一定的参考价值。
一、数字类型
Python 支持多种数字类型,包括:整型、长整型、布尔型、双精度浮点型、十进制浮点型、 复数。
1、整型:最通用的数字类型,在32位机上,范围 -2147483648 — 2147483647 (即 -231 — 231-1 )
2、布尔型:只有两个取值,True 和 False
3、长整型: 用大写字母 "L” 表示 (整型和长整形统一,当数值大写超出整型的范围时,不再溢出,而是自动转化为长整形)
4、双精度: 类似C中的double,可以十进制或者科学计数法表示, 如:3.14, 4.2E-10
5、复数:复数对象拥有数据属性,分别为该复数额度实部和虚部
二、运算符及其类型转换
运算符: 加 + 减 - 乘 * 除 / 取余 % 乘方 ** 取反 ~ 按位与 & 按位或 | 异或 ^ 左移 << 右移 >>
转换规则:
如果有一个操作数是复数, 另一个操作数被转换为复数。
否则,如果有一个操作数是浮点数, 另一个操作数被转换为浮点数。
否则, 如果有一个操作数是长整数,则另一个操作数被转换为长整数;
否则,两者必然都是普通整数,无须类型转换。
三、内置/工厂函数
转换函数:int()、long()、 float() 、complex()、bool()
功能函数:
abs(num) 返回 num 的绝对值
coerce(num1, num2) 将 num1 和 num2 转换为同一类型,然后以一个元组的形式返回。
divmod(num1, num2) 除法-取余运算的结合。返回一个元组 (num1/num2,num1 %num2) 。对浮点数和复数的商进行下舍入(复数仅取实 数部分的商)
pow(num1, num2, mod=1) 取 num1 的 num2 次方,如果提供 mod 参数,则计算结果再对 mod 进行取余运算
round(flt, ndig=0) 接受一个浮点数 flt 并对其四舍五入,保存 ndig 位小数。若不提供 ndig 参数,则默认小数点后 0 位。
hex(num) 将数字转换成十六进制数并以字符串形式返回
oct(num) 将数字转换成八进制数并以字符串形式返回
chr(num) 将 ASCII 值的数字转换成 ASCII 字符,范围只能是 0 <= num <= 255
ord(chr) 接受一个 ASCII 或 Unicode 字符(长度为1的字符串),返回相应的ASCII或Unicode 值。
unichr(num) 接受 Unicode 码值,返回 其对应的 Unicode 字符。所接受的码值范围依赖于你的 Python 是构建于 UCS‐2 还是 UCS‐4 。
四、相关模块
decimal 十进制浮点运算类 Decimal
array 高效数值数组(字符,整数,浮点数等等)
math/cmath 标准 C 库数学运算函数。常规数学运算在 match 模块,复数运算在 cmath 模块
operator 数字运算符的函数实现。比如 tor.sub(m,n) 等价
五、核心模块:random
当你的程序需要随机数功能时,random 模块就能派上用场。该模块包含多个伪随机数发生器,它们均以当前的时间戳为随机数种子。这样只要载入这个模块就能随时开始工作。下面列出了该模块中最常用的函数:
randrange() 两个整数参数,返回二者之间的随机整数( 接 受 和 range() 函 数 一 样 的 参 数 , 随 机 返 回 range([start,]stop[,step])结果的一项)
uniform() 几乎和 randint() 一样,不过它返回的是二者之间的一个浮点数(不包括范围上限)
random() 类似 uniform() 只不过下限恒等于 0.0,上限恒等于 1.0
choice() 随机返回给定 序列 的一个元素
以上是关于python 数据类型之数字的主要内容,如果未能解决你的问题,请参考以下文章