Le vendredi 03 octobre 2008 à 11:43 +0000, STINNER Victor a écrit :
> STINNER Victor <victor.stinner@haypocalc.com> added the comment:
>
> > The most generic way of allowing all bytes-alike objects is to write:
> > path = bytes(path)
>
> If you use that, any unicode may fails and the function will always return
> unicode. The goal is to get:
> func(bytes)->bytes
> func(bytearray)->bytes (or maybe bytearray, it doesn't matter)
> func(unicode)->unicode
Then make it:
path = path if isinstance(path, str) else bytes(path)