Есть достаточно много различных решений.
Общий вывод — распознают плохо.
Ошибки более, чем в 40% случаев для английского, более, чем в 60% случаев для русского.
Когда-то сам этим интересовался, ничего стоящего не нашёл.
Windows — PyCharm — говорят хороший (сам не пробовал), или Wing, иногда и стандартная IDLE подходит.
Linux — Geany (да она и для всех языков подходит — легковесно и удобно), и, конечно Vim/Emacs.