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))

Comments

Post a Comment

Popular posts from this blog

PYTHON FULL NOTES BY SHAYAN