1.何为__init__()?
在力扣(LeetCode)给出的代码段中,是使用 Python中的 class类来呈现代码的,在对类的理解中我出现了疑惑,记得在大二学习java的时候每次定义一个类都会有与类名相同的初始化函数,为什么在题目中Python没有给出?
答:Python中类的初始化方法是'__init__()',(注意init左右两边分别是两个下划线),'__init__()'可以实现对所创建类的初始化,同时在创建对象的时候对其相关属性进行封装,如果更改为其它名字,那在封装的过程中就需要执行所修改名字的初始化方法。所以当别人用我们的类的时候,就必须先执行一次我们自己所定义的方法,这样不合理。
2.在力扣(LeetCode)中没有给出nums和target的输入从何而来,于是我就做了一个输入 ,如图:
class Solution:
def __init__(self,nums,target):
self.nums=nums
self.target=target
def twoSum(self):
n=len(self.nums)
for i in range(n):
for j in range(i+1,n):
if(self.nums[i]+self.nums[j]==self.target):