请稍候,加载中....

数字与运算符

Python数字类型

  • 整数:  整数int 可以10进制表示,也可以二进制0b、八进制0o、十六进制表示0x
  • 小数:浮点数 - float
  • 复数:  复数 - complex(实数 + 虚数j部分)

数学运算符

运算符 优先级 描述 实例(a = 2, b = 3)
+ 最低, 同等优先级,从左到右 加 - 两个对象相加 a + b 输出结果 5
- 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -1
* 高于+、-运算, 同等优先级,从左到右 乘 - 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 6
/ 除 - x除以y b / a 输出结果 1.5
// 取整除 - 返回商的整数部分(向下取整),如果有一个操作数为浮点数,返回类型也为浮点数

3//2  => 1
3.0//2 => 1.0
3//2.0 => 1.0

% 取模 - 返回除法的余数, 余数的符号与除数一致 b % a 输出结果 1
(-b) % a 输出结果1
b % (-a) 输出结果-1
** 最高 幂 - 返回x的y次幂 a**b 为2的3次方, 输出结果8

数学运算需要注意运算符的优先级,可以通过使用()来保证计算优先性

数学运算示例

# 甲乙二人相向而行,5分钟后,两人之间距离缩短1/3,请问,两人相遇需要几分钟
1/(1/3)*5
# 重力加速度为9.8m/s2,站在5米的高度,水平方向以380米/s抛出一个球,请问此球落地点距离原处多远
# 球的水平位移 s = 水平匀速速度 * 水平移动时间
# 球的落地时间 t = (5 * 2 / 9.8) ** 0.5
380 * (5 * 2 / 9.8) ** 0.5
# 浏览新闻网页,往往将很多新闻分成几页,一页一页的翻阅。假设现在有23条新闻,每页显示5条,计算总页数
23 // 5 + 1

复数运算

# 复数表示:实部 + 虚部j
1 + 0j
2 + 2j

# 复数运算
# 加减运算
(1+1j) + (2+2j)
(1+1j) / (2+2j)
# 乘除运算
(1+1j) * (2+2j)
(1+1j) / (2+2j)

运算结果类型说明

除法的运算结果始终是浮点数

10 / 2  # 5.0
10.0 / 2.0 # 5.0
10 / 2.0  # 5.0
10.0 / 2 #5.0

乘法运算的结果,如果操作数有一个是浮点数,结果就为浮点数

10 * 2 # 20
10.0 * 2 # 20.0
10 * 2.0 # 20.0

整除运算的结果, 如果操作数有一个是浮点数, 结果就为浮点数

10 // 2 # 5
10.0 // 2 # 5.0
10 // 2.0 # 5.0

取模运算的结果, 如果操作数有一个数是浮点数, 结果就为浮点数

10 % 3 # 1
10.0 % 3 # 1.0
10 % 3.0 # 1.0

指数运算的结果, 如果一个操作数有一个数是浮点数, 结果就为浮点数

10 ** 2 # 100
10.0 ** 2 # 100.0
10 ** 2.0 # 100.0

关于负数运算

负数的整除运算

向下取整

10 // -3 # 结果为-4, 而不是 -2
-10 // 3 # 结果为-4

负数的取模运算

结果的正负与运算符右侧的操作数一致

10 % -3 # 结果是 -2 而不是 1
-10 % 3 # 结果是 2

数字类型对象方法

查看数字类型的内置方法


Python学习手册-