On 2/21/06, Josiah Carlson <[EMAIL PROTECTED]> wrote: > The question which still remains in my mind, which I previously asked, > is whether the use cases are compelling enough to warrant the feature > addition.
I don't know whether I support the proposal or not, but in reading Mark Russel's email, I realized that I just recently ran into a use case: ---------------------------------------------------------------------- # group tokens into chunks by their chunk labels token_groups = [] curr_suffix = '' curr_tokens = [] for token in document.IterAnnotations('token', percent=80): label = token[attr_name] # determine the prefix and suffix of the label prefix, suffix = label[0], label[2:] # B labels start a new chunk if prefix == 'B': curr_suffix = suffix curr_tokens = [token] token_groups.append((curr_suffix, curr_tokens)) # I labels continue the previous chunk elif prefix == 'I': if curr_suffix == suffix: curr_tokens.append(token) # error: change in suffix - this should be a B label else: # log the error message = '%r followed by %r' last_label = curr_tokens[-1][attr_name] self._logger.info(message % (last_label, label)) # start a new chunk curr_suffix = suffix curr_tokens = [token] token_groups.append((curr_suffix, curr_tokens)) # O labels end any previous chunks elif prefix == 'O': curr_suffix = suffix curr_tokens = [token] ---------------------------------------------------------------------- You can see that the code:: curr_suffix = suffix curr_tokens = [token] token_groups.append((curr_suffix, curr_tokens)) is repeated in two places. I would have liked to factor this out into a function, but since the code requires rebinding curr_suffix and curr_tokens, I can't. I'm not sure I care that much -- it's only three lines of code and only duplicated once -- but using something like ``curr_suffix :=`` or Phillip J. Eby's suggestion of ``.curr_suffix =`` would allow this code to be factored out into a function. STeVe -- Grammar am for people who can't think for myself. --- Bucky Katt, Get Fuzzy _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com