«Память и Python. Что надо знать для счастья?» - коротко и ясно рассказывают про утечки, аллоцирование, профилирование, устройство объектов, сборщик мусора и расчет потребляемой памяти объектами.
«Поиск и оптимизация узких мест в Python» - о том почему отладчик не всегда друг, рефакторинг, htop, objgraph, cProfile, line profiler и другие.
Нам следует забывать о небольшой эффективности, например, в 97% случаев: преждевременная оптимизация - корень всех зол. Хотя мы не должны отказываться от своих возможностей в этих критических 3%. - Дональд Кнут.