Raymond Hettinger wrote: > Overall, I found that partition() usefully encapsulated commonly > occurring low-level programming patterns. In most cases, it completely > eliminated the need for slicing and indices. In several cases, code was > simplified dramatically; in some, the simplification was minor; and in a > few cases, the complexity was about the same. No cases were made worse.
it is, however, a bit worrying that you end up ignoring one or more of the values in about 50% of your examples... > ! rest, _, query = rest.rpartition('?') > ! script, _, rest = rest.partition('/') > ! _, sep, port = host.partition(':') > ! head, sep, _ = path.rpartition('/') > ! line, _, _ = line.partition(';') # strip > chunk-extensions > ! host, _, port = host.rpartition(':') > ! head, _, tail = name.partition('.') > ! head, _, tail = tail.partition('.') > ! pname, found, _ = pname.rpartition('.') > ! head, _, tail = name.partition('.') > ! filename, _, arg = arg.rpartition(':') > ! line, _, _ = line.partition('#') > ! protocol, _, condition = meth.partition('_') > ! filename, _, _ = filename.partition(chr(0)) this is also a bit worrying > ! head, found, tail = seq.find('-') but that's more a problem with the test suite. </F> _______________________________________________ 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