컴퓨터/파이썬 공부정리
[Python] flatten 구현 - iterator generator
스커
2020. 11. 10. 16:24
import time
def flatten(lst):
for item in lst:
if isinstance(item, list):
yield from flatten(item)
else:
yield item
if __name__ == "__main__":
start = time.time()
data = [1,[-2,[[4]], [0,5], [],3],[4],2,7] * 1000000
sum = 0
for e in flatten(data):
print(e, end=' ')
sum += e
if sum > 10:
break
print('\nResult :', sum)
print(f'time : {(time.time()-start) * 1000}')
#경과 시간 : 8ms(data를 1,000,000배하여 진행)