Могу ли я отключить неявные преобразования Unicode в Python, чтобы найти ошибки в смешанных строках?
При профилировании нашего кода я был удивлен, обнаружив миллионы звонков
C: \ Python26 \ Lib \ кодировки \ utf_8.py: 15 (декодирование)
Я начал отладку и обнаружил, что во всей нашей кодовой базе есть много мелких ошибок, обычно сравнивающих строку с юникодом или добавляющих строку и юникод. Python любезно декодирует строки и выполняет следующие операции в юникоде.
Как мило. Но дорого!
Я свободно владею юникодом, прочитавДжоэл Спольски а такжеПогружение в Python...
Я стараюсь держать наши внутренние компоненты кода только в юникоде.
Мой вопрос - могу ли я отключить это питоническое поведение хорошего парня? По крайней мере, пока я не найду все эти ошибки и не исправлю их (как правило, добавив u'u ')?
Некоторые из них чрезвычайно трудно найти (переменная, которая иногда является строкой ...).
Python 2.6.5 (и я не могу перейти на 3.x).