<div dir="ltr">Ah yes, that test case didn't cross my mind. In that case, a running sum of some kind would be required.<div><br></div><div><div>def parens_are_balanced(s):</div><div>    _sum = 0</div><div>    for c in s:</div><div>        if c == '(':</div><div>            _sum += 1</div><div>        elif c == ')':</div><div>            if _sum == 0:</div><div>                return False</div><div>            _sum -= 1</div><div>    return _sum == 0</div></div><div><br></div><div>Jim's first 2 implementations of quantify_parens could be turned into generators by substituting the outermost square brackets with parens.</div><div><br></div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature">Cheers,<br>Xianyi</div></div>
<br><div class="gmail_quote">On Mon, Nov 17, 2014 at 11:39 PM, Eric Floehr <span dir="ltr"><<a href="mailto:eric@intellovations.com" target="_blank">eric@intellovations.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div class="gmail_extra"><span><div class="gmail_extra">for s in strings:</div></span><div class="gmail_extra">    print(repr(s), s.count('(') == s.count(')'))</div></div></div></div></blockquote><div><br></div></span><div>But that will return true for ")this) isn't balanced( b)ut (says it( is"</div><div><br></div></div></div></div>
<br>_______________________________________________<br>
CentralOH mailing list<br>
<a href="mailto:CentralOH@python.org">CentralOH@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/centraloh" target="_blank">https://mail.python.org/mailman/listinfo/centraloh</a><br>
<br></blockquote></div><br></div>