Python abs()函数详细教程
abs()
函数返回一个数的绝对值;该函数的参数可以是一个整数、浮点数、复数或定义了__abs__()
方法的类;
如果参数是一个复数,则返回它的模;如果是定义了__abs__()
方法的类,则返回__abs__()
方法的返回值;
整数、浮点数
abs(x)
函数将返回x
的绝对值;
n = -1.5
print(abs(n))
输出:
1.5
复数
如果参数为复数,abs(x)
函数返回x
的模;
n = 3 + 4j
print(abs(n))
输出:
5.0
定义了__abs__()方法的类
如果参数是定义了__abs__()
的类,则abs(x)
函数返回x.__abs__()
的返回值;
class A:
def __init__(self,n):
self.value = n
def __abs__(self):
return self.value**2
a = A(5)
print(abs(a))
输出:
25
错误的类型
如果类未定义__abs__()
方法;则会造成TypeError
类型错误;
class A:
def __init__(self,n):
self.value = n
a = A(5)
print(abs(a))
输出:
Traceback (most recent call last): File "C:\Users\hocn\Desktop\test.py", line 7, in <module> print(abs(a)) TypeError: bad operand type for abs(): 'A'