comparison configmix/config.py @ 475:fa5b800055e4

Optimize ._split_ns(): use str.partition() if possible instead of str.split(n, 1)
author Franz Glasner <f.glasner@feldmann-mg.com>
date Fri, 17 Dec 2021 10:57:59 +0100
parents 02b210a2b022
children eddc0f7c6271
comparison
equal deleted inserted replaced
474:4d7f6dede574 475:fa5b800055e4
527 "none of the given variables found: %r" % (varnames,)) 527 "none of the given variables found: %r" % (varnames,))
528 else: 528 else:
529 return default 529 return default
530 530
531 def _split_ns(self, s): 531 def _split_ns(self, s):
532 nameparts = s.split(self._NS_SEPARATOR, 1) 532 try:
533 if len(nameparts) == 1: 533 ns, sep, rest = s.partition(self._NS_SEPARATOR)
534 return (None, s, ) 534 if sep:
535 else: 535 return (self.unquote(ns), rest)
536 return (self.unquote(nameparts[0]), nameparts[1], ) 536 else:
537 return (None, ns)
538 except AttributeError:
539 # pre PY 2.5
540 nameparts = s.split(self._NS_SEPARATOR, 1)
541 if len(nameparts) == 1:
542 return (None, s, )
543 else:
544 return (self.unquote(nameparts[0]), nameparts[1], )
537 545
538 def _split_filters(self, s): 546 def _split_filters(self, s):
539 nameparts = s.split(self._FILTER_SEPARATOR) 547 nameparts = s.split(self._FILTER_SEPARATOR)
540 if len(nameparts) == 1: 548 if len(nameparts) == 1:
541 return (s, [], ) 549 return (s, [], )