Exception handling in Python 3.x
Rob Richardson
Rob.Richardson at rad-con.com
Mon Dec 13 14:56:02 EST 2010
Arnaud,
Wouldn't your first suggestion exit after the first element in iterable?
And would your second suggestion throw an exception after normal
processing of all elements in the interator?
RobR
-----Original Message-----
I missed the start of this discussion but there are two simpler ways:
def func(iterable):
for x in iterable:
print(x)
return
raise ValueError("... empty iterable")
Or using 3.x's next's optional second argument:
_nonext=object()
def func(iterable):
x = next(iter(iterable), _nonext)
if x is _nonext:
raise ValueError("... empty iterable")
print(x)
--
Arnaud
--
http://mail.python.org/mailman/listinfo/python-list
More information about the Python-list
mailing list