Python 的整除有两种方式:// 和 %,分别表示不含余数的除法和除法的余数。这两个操作符相信大家都比较熟悉。但是,对于不同数据类型的操作,可能会出现我们意想不到的结果。下面就让我们从多个角度分析 Python 的整除和非整除操作。
1. 整数除以整数
若两个数都为整数,使用//操作符进行运算时,会将浮点数向下取整。另外使用%操作符,可以得到除法的余数。以下是示例代码:
def a = 9 // 2
print(a) # 4
def b = 9 % 2
print(b) # 1
2. 浮点数除以整数
若除数为整数,被除数为浮点数时,//操作符结果为浮点数类型。以下是示例代码:
def a = 9.5 // 2
print(a) # 4.0
3. 整数除以浮点数
若除数为浮点数,被除数为整数时,//操作符结果为浮点数类型。以下是示例代码:
def a = 9 // 2.0
print(a) # 4.0
4. 浮点数除以浮点数
除数被除数都是浮点数时,//操作符结果为浮点数类型。以下是示例代码:
def a = 9.0 // 2.0
print(a) # 4.0
5. 复数类型除法
除法操作不支持复数类型。以下是示例代码:
def a = 1 + 2j
b = 2 + 1j
c = a // b
Traceback (most recent call last):
File "
TypeError: can't take floor of complex number.
以上就是 Python 整除和非整除操作的示例代码和不同数据类型的操作产生的结果。当然,这只是冰山一角。Python 的运算符和数据类型不同,产生的结果也是千奇百怪的。所以,在编写 Python 代码时,一定要注意数据类型的匹配,充分利用 Python 语言的特性,才能做出高效、精准的代码。