我正在研究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]
答案 0 :(得分:2)
因为你写了L[1]
而不是L[i]
。