abs作为对象的功能

时间:2014-04-04 02:59:04

标签: python higher-order-functions

我正在研究John Guttag的使用Python进行计算和编程的简介。在页64上,他将函数描述为对象。

为什么abs功能的应用程序跳过“2”并打印“3.3300000001”三次?

我正在使用Idle Python Shell 3.3.3。

def applyToEach(L, f):

    for i in range(len(L)):

        L[1] = f(L[i])

L = [1, 2, 3.3300000001]        



print('L =', L)  ###L = [1, 2, 3.3300000001]

applyToEach(L, abs)

print('L =', L)   ###L = [1, 3.3300000001, 3.3300000001]

1 个答案:

答案 0 :(得分:2)

因为你写了L[1]而不是L[i]