그러나 소프트웨어를 완전히 새로 작성하기 전에, 다양한 기법을 활용해 필요한 부분만 최적화하는 것이 더 현실적인 선택일 수도 있다. 각각의 최적화 기법은 모두 트레이드오프가 다르다. 가능한 선택은 파이썬 코드의 규모가 어떤지, 코드의 복잡성은 어느 정도인지, 코드가 처한 제약 조건과 만족시켜야 할 요구사항 등에 따라 달라진다.
파이썬 프로그램에서 발생하는 많은 성능 문제는 겉으로 명확해 보이지 않는 원인에서 비롯된다. 코드를 프로파일링하고 벤치마킹해서(아이템 92 “최적화하기 전에 프로파일링을 하라”와 아이템 93 “timeit을 사용한 마이크로벤치마크를 통해 성능이 중요한 코드를 최적화하라” 참조) 실제 속도가 느려진 원인이나 과도한 메모리 사용의 원인(아이템 115 “프로그램이 메모리를 사용하는 방식과 메모리 누수를 이해하기 위해 tracemalloc을 사용하라” 참조)을 찾아야 한다. 또한, 핵심 알고리즘과 데이터 구조를 더 나은 대안으로 교체하는 것도 고려해야 한다(아이템 104 “우선순위 큐로 heapq를 사용하는 방법을 알아두라”와 아이템 102 “정렬된 시퀀스를 검색할 때는 bisect를 사용하라” 참조). 이런 방법을 사용하면 놀랍도록 적은 노력으로 프로그램 성능을 몇 배나 향상시킬 수 있다.