温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

数字类型运算

发布时间:2020-08-08 18:22:25 来源:ITPUB博客 阅读:137 作者:Winter 栏目:编程语言

python的数字类型分为三种,分别是 整数int 浮点数float 复数complex

  • 数字是由数字字面值或内置函数与运算符的结果来创建的, 不带修饰的整数字面值会生成整数。
  • 包含小数点或幂运算符的数字字面值会生成浮点数。
  • 在数字字面值末尾加上 ‘j’ 或 ‘J’ 会生成虚数(实部为零的复数),可以将其与整数或浮点数相加来得到具有实部和虚部的复数。

混合算术

Python 完全支持混合算术,当一个二元运算符用于不同数字类型的操作数时,具有“较窄” 类型的操作数会被扩展为另一个操作数的类型,整数比浮点数更窄,浮点数又比复数更窄。 混合类型数字之间的比较也使用相同的规则。构造器 int() float() complex() 可被用于生成特定类型的数字。

运算

所有数字类型(复数除外)都支持下列运算,按优先级升序排序, 所有数字运算的优先级都高于比较运算

运算 结果 注释
x + y x y 的和
x - y x y 的差
x * y x y 的乘积
x / y x y 的商
x // y x y 的商数 也称为整数除法,结果值是一个整数,但结果的类型不一定是 int。运算结果总是向负无穷的方向舍入: 1//2 , (-1)//2 -1 , 1//(-2) -1 (-1)//(-2)
x % y remainder of x / y 不可用于复数,应在适当条件下使用 abs()转换为浮点数
-x x 取反
+x x 不变
abs(x) x 的绝对值或大小
int(x) x 转换为整数 从浮点数转换为整数会被舍入或是像在 C 语言中一样被截断
float(x) x 转换为浮点数 float 也接受字符串 “nan” 和附带可选前缀 “+” 或 “-“ 的 “inf” 分别表示非数字 (NaN) 以及正或负无穷
complex(re, im) 一个带有实部 re 和虚部 im 的复数。 im 默认为0。 接受的数字字面值包括数码 9 或任何等效的 Unicode 字符(具有 Nd 特征属性的代码点)
c.conjugate() 复数 c 的共轭
divmod(x, y) (x // y, x % y) 不可用于复数
pow(x, y) x y 次幂
x ** y x y 次幂 Python 将 pow(0, 0) 0 ** 0 定义为 1 ,这是编程语言的普遍做法
  • 所有 numbers.Real 类型 (int 和 float) 还包括下列运算
运算 结果
math.trunc(x) x 截断为 Integral
round(x[, n] x 舍入到 n 位小数,半数值会舍入到偶数。 如果省略 n ,则默认为 0。
math.floor(x) <= x 的最大 Integral
math.ceil(x) >= x 的最小 Integral

整数类型的按位运算

按位运算只对整数有意义,计算按位运算的结果,就相当于使用无穷多个二进制符号位对二的补码执行操作。
二进制按位运算的优先级全都低于数字运算,但又高于比较运算 ;一元运算 ~ 具有与其他一元算术运算 (+ and -) 相同的优先级。

运算 结果
x 丨 y x y 按位
x ^ y x y 按位 异或
x & y x y 按位
x << n x 左移 n 位,等价于不带溢出检测地乘以 pow(2, n)
x >> n x 右移 n 位,等价于不带溢出检测地除以 pow(2, n)
~x x 逐位取反
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI