Re: [Python-Dev] cpython: Refactor importlib to make it easier to re-implement in C.
On Thu, 23 Feb 2012 16:18:19 +0100
brett.cannon
def _sanity_check(name, package, level): """Verify arguments are "sane".""" + if not hasattr(name, 'rpartition'): + raise TypeError("module name must be str, not {}".format(type(name)))
Why don't you simply use isinstance()? (bytes objects also have rpartition()) Regards Antoine.
On Thu, Feb 23, 2012 at 10:43, Antoine Pitrou
On Thu, 23 Feb 2012 16:18:19 +0100 brett.cannon
wrote: def _sanity_check(name, package, level): """Verify arguments are "sane".""" + if not hasattr(name, 'rpartition'): + raise TypeError("module name must be str, not {}".format(type(name)))
Why don't you simply use isinstance()? (bytes objects also have rpartition())
I think I was on a interface-conformance kick at the time and didn't want to restrict to a specific type over a specific interface. But since subclasses is not exactly complicated I can change this (which will also match potential C code more with a PyUnicode_Check()).
participants (2)
-
Antoine Pitrou
-
Brett Cannon