北萧一夜 2021-05-11 10:58 采纳率: 0%
浏览 134

leetcode python全局变量的问题

 

如图,最近做题的时候发现声明全局变量在上边会出错,求大佬解释一下

  • 写回答

3条回答 默认 最新

  • 天元浪子 优质创作者: python技术领域 2021-05-11 11:24
    关注

    题主对于全局变量和类的静态属性理解有误。这里的memo并非全局变量,而是类的静态成员,访问它需要加上self。请看下面的代码:

    >>> class Solution:
    	memo = dict()
    	def integerBreak(self, n):
    		def dp(n):
    			if n in self.memo:
    				return self.memo[n]
    			else:
    				return 'OK'
    		return dp(n)
    
    	
    >>> a = Solution()
    >>> a.integerBreak(5)
    'OK'
    评论

报告相同问题?