从数组第一个数字开始遍历,寻找是否有与第一个数字重复的数字,没有在从第二个开始在循环遍历第二个数字之后的所有数字寻找与第二个数字是否有重复的数字,以此类推,直到查找完数组中所有元素。

class Solution:
    # 这里要特别注意~找到任意重复的一个值并赋值到duplication[0]
    # 函数返回True/False
    def duplicate(self, numbers, duplication):
        # write code here
        n=len(numbers)
        for i in range(0,n):
            for j in range(i+1,n):
                if numbers[i] == numbers[j]:
                   duplication[0]=numbers[j]
                   return True
                
        return False
                
                
                
if __name__ == '__main__':
    s=Solution()
    print(s.duplicate([2,3,2,4],[None]))

def duplicate(self, numbers, duplication):
这一部分的self,我一开始不理解
后来看了这个就明白了:

class Dog()
	def __init__(self, name, age): 
 """初始化属性name和age""" 
	 self.name = name 
	  self.age = age

我们将方法__init__()定义成了包含三个形参:self、name和age。在这个方法的定义中,形
参self必不可少,还必须位于其他形参的前面。为何必须在方法定义中包含形参self呢?因为
Python调用这个__init__()方法来创建Dog实例时,将自动传入实参self。每个与类相关联的方法
调用都自动传递实参self,它是一个指向实例本身的引用,让实例能够访问类中的属性和方法。
我们创建Dog实例时,Python将调用Dog类的方法__init__()。我们将通过实参向Dog()传递名字和
年龄;self会自动传递,因此我们不需要传递它。每当我们根据Dog类创建实例时,都只需给最
后两个形参(name和age)提供值。