PYTHON ADVANCED - 14: GENERATORS
IN THIS TUTORIAL, YOU WILL LEARN ABOUT GENERATORS:
NOTE: TRY ALL METHODS WHICH ARE COMMENTED OUT
# def mygenerator():
# yield 3
# yield 2
# yield 1
# g = mygenerator()
# for i in g:
# print(i)
# print(sum(g))
# print(sorted(g))
# value = next(g)
# print(value)
# value = next(g)
# print(value)
# value = next(g)
# print(value)
# value = next(g)
# print(value)
# def countdown(num):
# print("Starting")
# while num > 0 :
# yield num
# num -=1
# cd = countdown(4)
# value = next(cd)
# print(value)
# print(next(cd))
# print(next(cd))
# print(next(cd))
import sys
# def firstn(n):
# nums = [1]
# num = 0
# while num < n:
# nums.append(num)
# num +=1
# return nums
# def firstn_generator(n):
# num = 0
# while num < n:
# yield num
# num += 1
# # print(sum(firstn(10)))
# # print(sum(firstn_generator(10)))
# print(sys.getsizeof(firstn(10000)))
# print(sys.getsizeof(firstn_generator(100000)))
# def fibonacci(limit):
# # 0 1 1 2 3 5 8 13 ......
# a, b = 0, 1
# while a < limit:
# yield a
# a, b = b, a+b
# fib = fibonacci(30)
# for i in fib:
# print(i)
import sys
mygen = (i for i in range(10) if i%2 == 0)
# for i in mygen:
# print(i)
# print(list(mygen))
print(sys.getsizeof(mygen))
mylist = [i for i in range(10) if i%2 == 0]
# print(mylist)
print(sys.getsizeof(mylist))
Really admirable work
ReplyDelete