1. Python Performance 01 - String Concatenation : http://ngee.tistory.com/710

2. Python Performance 02 - Loops : http://ngee.tistory.com/711

3. Python Performance 03 - Eliminate Dots : http://ngee.tistory.com/712

4. Python Performance 04 - Call Function : http://ngee.tistory.com/713

5. Python Performance 05 - List, Dqueue : http://ngee.tistory.com/799


파이썬 성능과 관련된 포스팅을 모아두려고 합니다.


두 번째는 Loop 처리를 어떻게 하는 것이 좋은지 확인해봤습니다.


참고한 자료는 PerformanceTips - https://wiki.python.org/moin/PythonSpeed/PerformanceTips  입니다.


위 문서에도 나와 있지만 결론적으로는 


for 문으로 요소를 하나씩 처리해서 다른 리스트에 넣는 것은 매우 비효율적이다 라는 것입니다. 

지능형 리스트나 발생자 표현식 같은 것을 활용해야 한다는 것이구요.


테스트한 소스는 아래와 같습니다. 


좀 길지만 내용은 간단합니다. 

리스트에 숫자들을 넣어두고, sqrt 함수를 돌려서 다른 리스트에 저장하는 것입니다. 


처리 결과 확실히 발생자 표현식이 빠르다는 것을 확인할 수 있었습니다.

앞으로는 단순 for 문은 사용하면 안되겠다는 생각도 했구요;;; 


차이가 꽤 많이 나서요. 깜짝 놀랐습니다.


모든 소스코드는 github를 통해 공개해두려고 합니다.

별것도 없구요.


그래서 github 주소는 https://github.com/motobyus/ptest   입니다 :-)


+ Recent posts