我在类的最前面声明了一个空字典,为什么函数运行起来里面突然有值了?

在类似于leetcode的平台上做题,有道连通性查找……

clipboard.png

函数是放在类里面
在类的最开头 没有用def __init__而是直接声明了一个空字典

但是后面运行解题函数的时候 刚开始基本什么都没做的时候
打印一看 怎么这个空字典里面有值了???

(外面的main函数是只调用accountsMerge这个函数的)

这是怎么回事?

而且这段代码点测试的时候是通过的,测试的时候后面字典还是为空,但一提交就会变成字典突然有值的情况……

后来百思不得其解,新建了个def __init__初始化函数,把father={}放进去才通过

这到底是怎么回事?为什么突然会有值,还是纯粹它有系统bug?


肥皂起泡泡
浏览 663回答 1
1回答

GCT1015

用leetcode 刷题吧他验证的时候大概是这样的a = Solution() # 实例化一个aa.accountMerge(xxx) == xxxx # 正确a.accountMerge(xxx1) == xxxx2 # 错了因为没有实例化新的a,所以father还是上一个father所以在accountMerge内先把self.father = {} 清空
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python