我试图通过调试器运行leetcode解决方案,这样我就可以看到解决方案是如何工作的。括号里是20号。这是我插入调试器…我错过了什么?
我尝试的屏幕截图
class Solution:
def isValid(self, s: str) -> bool:
parenthesis = {"}":"{",
"]":"[",
")":"("
}
stack = []
for i in s:
if i in parenthesis:
if not stack or paren[i] != stack[-1]:
return False
else:
stack.pop()
else:
stack.append(i)
return stack == []
Solution.isValid("{[]}")
我试着做一个类的实例,但我仍然得到同样的问题。
我认为你应该先创建一个类的对象。
sol = Solution()
print(sol.isValid("{[]}")
创建Class Solution
的Object a
注意需要使用print
语句输出。如果没有print
语句,控制台将不会显示任何内容。
class Solution:
def isValid(self, s: str) -> bool:
parenthesis = {"}":"{",
"]":"[",
")":"("
}
stack = []
for i in s:
if i in parenthesis:
if not stack or parenthesis[i] != stack[-1]:
return False
else:
stack.pop()
else:
stack.append(i)
return stack == []
a=Solution()
print(a.isValid("{[]}"))
输出: -
True