擅长:python、mysql、java
<p>下面的for循环正在枚举传递给checker()函数的字符串</p>
<p>它返回一个索引和传递给checker()的字符串的每个字符。
start=1的原因是在传递给checker()的字符串周围不包含引号</p>
<pre><code>for index, char in enumerate(text, start=1):
</code></pre>
<p>下面的条件检查是否存在字符“[”、“(”、“{”)。
如果存在,则将它们作为参数传递给括号类。然后将从括号类返回的值附加到列表堆栈[]</p>
<pre><code>if char in ("[", "(", "{"):
stack.append(Bracket(char, index))
</code></pre>
<p>尝试在for循环之后添加一个print语句,如下所示,并运行代码</p>
<pre><code>for index, char in enumerate(text, start=1):
print(index,char)
.......
</code></pre>
<p>我想这会帮助你理解它在做什么</p>
<pre><code>def __init__(self, bracket_type, position):
.........
</code></pre>
<p>在<code>Bracket Class</code>中,<code>bracket_type</code>是<code>char</code>,而<code>position</code>是<code>index</code></p>