Python fabs() 与 abs() 区别是什么?

Python 中 fabs(x) 方法返回 x 的绝对值。虽然类似于 abs() 函数,但是两个函数之间存在以下差异:

  • abs() 是一个内置函数,而 fabs() 在 math 模块中定义的。
  • fabs() 函数只适用于 float 和 integer 类型,而 abs() 也适用于复数。

实例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import math

a = -1
b = -1.3232
c = b
d = 1+1.0j
e = 3+4.0j
print "a 的绝对值是:", abs(a)
print "b 的绝对值是:", abs(b)
print "c 的绝对值是:", math.fabs(c)
print "d 的的绝对值是:", abs(d)
"""print "e 的绝对值是:", math.fabs(e) """

最后一行代码如果去掉注释就会编译报错:

TypeError: can't convert complex to float  // fabs 无法将复数转换为浮点型

Python3.x 测试代码:

import math
a = -1
b = -1.3232
c = b
d = 1+1.0j
e = 3+4.0j
print "a 的绝对值是:",abs(a))
print("b 的绝对值是:",abs(b))
print("c 的绝对值是:",math.fabs(c))
print("d 的的绝对值是:",abs(d))
"""print("e 的绝对值是:",math.fabs(e))"""

「点点赞赏,手留余香」

0

给作者打赏,鼓励TA抓紧创作!

微信微信 支付宝支付宝

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
码云笔记 » Python fabs() 与 abs() 区别是什么?

发表回复