On 04/06/2016 11:32 AM, Brett Cannon wrote: > On Wed, 6 Apr 2016 at 11:06 Ethan Furman wrote: >> On 04/06/2016 10:26 AM, Brett Cannon wrote: >>> Now we need clear details. :) Some open questions are: >>> >>> 1. Name: __path__, __fspath__, or something else? >> >> __fspath__ > > +1 for __path__, +0 for __fspath__ (I don't know how widespread the > notion that "fs" means "file system" is). Maybe __os_path__ then? I would rather be explicit about the type of path we are dealing with -- who knows if we won't have __url_path__ in the future (besides Guido, of course ;) > def fspath(path): > try: > return path.__path__() > except AttributeError: > if isinstance(path, str): > return path > raise TypeError # Or NotImplementedError? > > Or you can drop the isinstance() check and [...] If the purpose of fspath() is to return a usable path-as-string then we should raise if unable to do it. > If we add str.__fspath__ then the function becomes: > > def fspath(path): > return path.__fspath__() > > Which might be too simplistic for a built-in, but that also means adding > it on str would potentially negate the need for a built-in. That is an attractive option. -- ~Ethan~
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4