考虑以下代码:
def my_fun(an_iterable):
for val in an_iterable:
do_work(val)
if some_cond(val):
do_some_other_work(an_iterable)
break
如果an_iterable
是list
/ tuple
,do_some_other_work
将再次获得整个列表。但如果an_iterable
是 aiterator
或 a generator
,它将只接收列表中的其余项目。如何区分两种情况?我只想do_some_other_work
收到其余的物品。