-1
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'
4

1 回答 1

0

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

Print(Bubble(L))
于 2020-03-26T23:07:31.180 回答