docs: def partition(src, key=None):
      """No relation to :meth:`str.partition`, ``partition`` is like
      :func:`bucketize`, but for added convenience returns a tuple of
      ``(truthy_values, falsy_values)``.
  
      >>> nonempty, empty = partition(['', '', 'hi', '', 'bye'])
      >>> nonempty
      ['hi', 'bye']
  
      *key* defaults to :class:`bool`, but can be carefully overridden to
      use any function that returns either ``True`` or ``False``.
  
      >>> import string
      >>> is_digit = lambda x: x in string.digits
      >>> decimal_digits, hexletters = partition(string.hexdigits, is_digit)
      >>> ''.join(decimal_digits), ''.join(hexletters)
      ('0123456789', 'abcdefABCDEF')
      """
      bucketized = bucketize(src, key)
      return bucketized.get(True, []), bucketized.get(False, [])