Benjamin Peterson <benja...@python.org> added the comment:

2011/11/9 Nick Coghlan <rep...@bugs.python.org>:
>
> Nick Coghlan <ncogh...@gmail.com> added the comment:
>
> Why provide any namedtuple interface in any context? After all, you can just 
> unpack them to individual variables.
>
> The point is that the values produced by os.walk() *aren't* just an arbitrary 
> 3-tuple - they have a definite API for describing a directory: the base path, 
> then lists of relative names for any subdirectories and the relative names 
> for any files. Why not make that explicit in the objects produced instead of 
> leaving it as merely implied?

You could make this argument for any function that returns a tuple to
return multiple distinct values. I claim that the API in this case is
already simple enough that adding a nametuple does nothing but feature
bloat. What does having a "dirinfo" object with attributes tell you
that simply unpacking the tuple doesn't? You have to remember names in
both cases.

>
> This idea actually came out of the proposal for providing an 
> itertools-inspired toolset for manipulating the output of os.walk() style 
> iteration (#13229 and https://bitbucket.org/ncoghlan/walkdir/overview).
>
> I'll be adding this feature to walkdir regardless, but it seems to make more 
> sense to offer it as standard behaviour.

Indeed, I think using a namedtuple seems more appropriate for your
"fancier" api.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue13375>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to