算术运算

一、基础四则运算符

运算符作用
+加法
-减法
*乘法
/除法,Python3 结果永远返回浮点数(小数)
>>> 1 + 1
2
>>> 1 + 3 / 2 * 4
7.0
>>> 1.0 * 2
2.0
>>> 1.0 + 1
2.0
>>> (1+3)/3 - (5*3)
-13.666666666666666

运算优先级:先乘除,后加减,括号优先。整数和小数混合运算,结果自动变成浮点数。

二、Python大数特性

Python支持超大整数相乘,不会溢出,可以处理非常长的数字。

补充:浮点数超出范围会返回 inf(无穷大 infinity)。

三、取余运算符 %

注意:%两种完全不同用途

  1. 字符串格式化"%d岁" % 18
  2. 算术取余运算:求除法之后的余数
# 324 ÷ 101 = 3  余数 21
324 % 101   # 结果 21Code language: PHP (php)

补充:整除 //

  • /:普通除法,得到小数
  • //:地板整除,只保留整数部分,丢掉小数
>>> 324 / 101
3.2079...
>>> 324 // 101
3
>>> 324 % 101
21Code language: JavaScript (javascript)

四、浮点数小坑(4023‑22.4)

>>> 4023 - 22.4
4000.5999999999995Code language: CSS (css)

这是计算机二进制浮点数精度误差,不是算错。
%f格式化打印可以展示成正常外观:

>>> print("%f" % (4023 -22.4))
4000.600000Code language: CSS (css)

总结

  1. + - * / 基础四则;*乘,/除,不要写×÷。
  2. Python3 / 除法永远出小数;//做整除,%做取余数。
  3. %符号:字符串里是占位符,数字计算里是求余数,同一个符号两套用法。
  4. 整数与浮点数运算 → 结果为浮点数。
  5. 浮点数会有微小精度偏差,打印格式化可以美化输出。
  6. Python整数可以无限大,不会溢出;浮点数超限得到inf

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注