【发布时间】:2014-01-24 01:02:36
【问题描述】:
abs 适用于 numpy 数组但不适用于列表,我感到很惊讶。这是为什么呢?
import numpy as np
abs(np.array((1,-2)))
array([1, 2])
abs([1,-1])
TypeError: bad operand type for abs(): 'list'
此外,像 sum 这样的内置函数也适用于 numpy 数组。我猜是因为 numpy 数组支持__getitem__?但是对于abs,如果它依赖于__getitem__,它也应该适用于列表,但它没有。
【问题讨论】: