我正在尝试在python中重新创建内置的“ max()”函数,以了解其内幕。
我想出了一些可以完成这项工作的代码,但是由于某些原因,当我更改列表中的数字时会遇到错误。
这是我正在使用的代码:
x = [1,300,6,22,8,44,28,46,57,70]
def my_max(x):
maxi = x[0]
for i in x:
if x[i] > maxi:
maxi =x[i]
return maxi
print('Max number is ' + str(my_max(x)))
如果我运行此代码,它将说“列表索引超出范围”,但是,如果我将x更改为
x = [1,3,6,9,8,4,2,6,5,7]
它工作正常,我不明白为什么更改列表中的数字会导致此错误