尝试定义函数,但我"List Function has no attributes"


def Bubble(L):
x = L.copy()
for j in range(len(x)):
for i in range (len(x)-1):
firstnumber = x[i]
secondnumber = x[i+1]
if x[i] > x[i+1]:
x[i] = secondnumber
x[i+1] = firstnumber
return x
def Max(L):
print(L.Bubble[len(L)-1])
def Min(L):
print(L.Bubble[0])

在用Bubble对列表进行排序后,我试图定义列表的最大值和最小值,但每次运行它时,我都会得到:

AttributeError: 'list' object has no attribute 'Bubble'

这与面向对象编程有关。对象的成员函数由对象封装,访问方式为nameofobject.memberfunction(parameters if any)。在这里,您定义了一个在列表上工作的函数,而不是列表的成员函数,因此出现了这个问题。正确的方法是:

Print(Bubble(L))

最新更新