Python Performance Check
List Comp 와 Generator Comp 차이 속도차이 비교
참고 블로그
- 제너레이터 컴프리헨션 표현식
generator_items = (
expression
for i in range(100)
)
from timeit import timeit
import random
from faker import Faker
import time
from memory_profiler import profile
"""
List Comprehension 과 Generator Comprehension 속도차이 비교를 위해 코드 작성
"""
fake = Faker('ko_KR')
@profile
def test():
""""List Comprehension"""
items = [
{
'id': i,
'name': fake.name(),
'address': fake.address(),
'age': random.randint(1, 100)
}
for i in range(10_000)
]
return items
@profile
def test2():
"""Generator Comprehension"""
items = (
{
'id': i,
'name': fake.name(),
'address': fake.address(),
'age': random.randint(1, 100)
}
for i in range(10_000)
)
return items
print(timeit(test, number=10))
print(timeit(test2, number=10))
# result = test()
result2 = test2()
for item in result2:
print(item)
댓글남기기