Python abs作为一个对象起作用
我正在阅读John Guttag关于使用Python进行计算和编程的介绍。在第64页,他谈到了作为对象的函数 为什么abs功能的应用会跳过“2”并打印“3.330000001”三次 我正在使用空闲的PythonShell 3.3.3Python abs作为一个对象起作用,python,higher-order-functions,Python,Higher Order Functions,我正在阅读John Guttag关于使用Python进行计算和编程的介绍。在第64页,他谈到了作为对象的函数 为什么abs功能的应用会跳过“2”并打印“3.330000001”三次 我正在使用空闲的PythonShell 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) ###
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]
因为你写的是
L[1]
,而不是L[i]