[Ron Adam] > So I was wondering if something like the following is feasible? > [...] > > with opening(file1,m),opening(file2,m),opening(file3,m) as f1,f2,f3: > # do stuff with files > > The 'with' (or whatever) statement would need a little more under the > hood, but it might simplify handling multiple resources. > > This also reduces nesting in cases such as locking and opening. Both > must succeed before the block executes. And if something goes wrong, the > "with" statement knows and can handle each resource. The point is, each > resource needs to be a whole unit, opening multiple files in one > resource handler is probably not a good idea anyway.
I'm -0 on this, if only because it complicates things a fair bit for a very minor improvement in functionality. There are also some semantic/syntactic questions: should this work only if there are explicit commas in the with-statement (so the compiler can generate code equivalent to nested with-statements) or should it allow a single expression to return a tuple of resource managers dynamically (so the run-time must check fora tuple each time)? It's always something we can add in the future, since it's guaranteed that this syntax (or a tuple value) is invalid in the curernt proposal. So I'd rather punt on this. -- --Guido van Rossum (home page: http://www.python.org/~guido/) _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com