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