Python 实现 itertools.takewhile
这里给出两种实现class takewhile:def __init__(self,predicate,iterable,/):
self.__predicate=predicate
self.__iterable=iter(iterable)
def __iter__(self):
return self
def __next__(self):
temp=next(self.__iterable)
if self.__predicate(temp):
raise StopIteration
else:
return tempdef takewhile(predicate, iterable, /):
for i in iterable:
if predicate(i):
break
else:
yield i如果代码有问题,欢迎在评论区指正!{:10_323:}
页:
[1]