数字
数字在编程中经常使用,以在游戏中记分、在可视化中表示数据、在 Web 应用程序中存储信息等等。Python 以几种不同的方式处理数字,这取决于它们的使用方式。让我们首先看看 Python 如何管理整数,因为它们最容易使用。
整数
您可以在 Python 中对整数进行加法 (+
)、减法 (-
)、乘法 (*
) 和除法 (/
)。
>>> 2 + 3
5
>>> 3 - 2
1
>>> 2 * 3
6
>>> 3 / 2
1.5
在终端会话中,Python 只是返回操作的结果。Python 使用两个乘法符号来表示指数:
>>> 3 ** 2
9
>>> 3 ** 3
27
>>> 10 ** 6
1000000
Python 也支持操作顺序,因此您可以在一个表达式中使用多个操作。您还可以使用括号来修改运算顺序,以便 Python 可以按照您指定的顺序计算表达式。例如:
>>> 2 + 3*4
14
>>> (2 + 3) * 4
20
这些示例中的间距对 Python 如何计算表达式没有影响;它只是帮助您在阅读代码时更快地找出具有优先权的操作。
浮点数
Python 将任何带小数点的数字称为浮点数。大多数编程语言都使用这个术语,它指的是小数点可以出现在数字的任何位置。每种编程语言都必须经过精心设计,以正确管理十进制数字,以便无论小数点出现在何处,数字都能正常运行。
大多数情况下,您可以使用浮点数而不用担心它们的行为。只需输入您要使用的数字,Python 很可能会执行您期望的操作:
>>> 0.1 + 0.1
0.2
>>> 0.2 + 0.2
0.4
>>> 2 * 0.1
0.2
>>> 2 * 0.2
0.4
但是,请注意,您有时可以在答案中获得任意数量的小数位:
>>> 0.2 + 0.1
0.30000000000000004
>>> 3 * 0.1
0.30000000000000004
这种情况在所有语言中都会发生,并且无关紧要。Python 试图找到一种尽可能精确地表示结果的方法,考虑到计算机必须在内部表示数字,这有时很困难。暂时忽略多余的小数位;在第 II 部分的项目中,您将学习如何在需要时处理额外的地方。
整数和浮点数
当您将任意两个数字相除时,即使它们是结果为整数的整数,您也总是会得到一个浮点数:
>>> 4/2
2.0
如果你在任何其他操作中混合了一个整数和一个浮点数,你也会得到一个浮点数:
>>> 1 + 2.0
3.0
>>> 2 * 3.0
6.0
>>> 3.0 ** 2
9.0
Python 在任何使用浮点数的操作中默认为浮点数,即使输出是整数也是如此。
数中的下划线
当你写长数字时,你可以使用下划线对数字进行分组,以使大数字更具可读性:
>>> universe_age = 14_000_000_000
当您打印使用下划线定义的数字时,Python 仅打印数字:
>>> print(universe_age)
14000000000
Python 在存储这些类型的值时会忽略下划线。即使您不将数字分成三组,该值也不会受到影响。对于 Python,1000 等同于 1_000,也就是 10_00。此功能适用于整数和浮点数。