python中divmod接受复数

698次阅读
没有评论

python中divmod接受复数

很多函数都可以结合复数一起使用,我们最近会着重于使用python解决一些运算问题。有的小伙伴问小编能不能在divmod函数中使用复数,这里不做解答。有这样的困惑是因为我们对于divmod函数还没有完全的理解。在返回一些数学运算中的操作上,是需要我们掌握divmod的重点。接下来就divmod能否接受复数问题进行解答。

说明:

1.接受两个数值(非复数),返回两个数值的相除得到的商,和余数组成的元组。

2.如果参数都是整数,执行的是地板除,相当于 (a//b,a%b)。

>>> divmod(5,2)
(2, 1)
>>> 5//2
2
>>> 5%2
1

3.如果参数时浮点数,相当于( math.floor(a/b),a%b)。

>> divmod(5.5,2)
(2.0, 1.5)
>>> math.floor(5.5/2)
2
>>> 5.5/2
2.75
>>> math.floor(5.5/2.0)
2
>>> 5.5%2
1.5

使用代码:

"""
divmod(a, b)
它将两个(非复数)数字作为实参,并在执行整数除法时返回一对商和余数。对于混合操作数类型,适用双目算术运算符的规则。对于整数,结果和 (a // b, a % b) 一致。对于浮点数,结果是 (q, a % b) ,q 通常是 math.floor(a / b) 但可能会比 1 小。在任何情况下, q * b + a % b 和 a 基本相等;如果 a % b 非零,它的符号和 b 一样,并且 0 <= abs(a % b) < abs(b) 。
"""
# division和modulus两个单词的缩写
# 它将两个(非复数)数字作为实参,并在执行整数除法时返回一对商和余数
# 返回值一个包含商和余数的元组
# 对于整数,结果和 (a // b, a % b) 一致。
a = 20  # 被除数
b = 3   # 除数
print(f'{ divmod(a, b) = }')
print(f'{ (a//b, a%b) = }')
# 对于浮点数,结果是 (q, a % b) ,q 通常是 math.floor(a / b)
import math
a = 2.0  # 被除数
b = 0.3  # 除数
q = math.floor(a/b)
print(f'{ divmod(a, b) = }')
print(f'{ (q, a%b) = }')
# 在任何情况下, q * b + a % b 和 a 基本相等

看完整篇文章我们会发现,虽然复数可以结合很多函数一起使用,但是在divmod是不能接受复数,这点很多小伙伴需要注意,不要运行代码最后出错啦。

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:wuyou2021-05-17发表,共计1094字。
新手QQ群:570568346,欢迎进群讨论 Python51学习