@Sad_Bro
На темной стороне.

Проблема с кодировкой, как победить при поиске подстроки?

Версия python 2.7
Есть функция которая должна отдавать true/false, в зависимости от того есть ли подстрока в строке, если я пробую ее в консоли все работает, но в реальных условиях строка по которой должен идти поиск приходит в таком виде u'\u041d\u043e\u043c\u0435\u0440 \u0442\u043e\u0447\u043a\u0438
в строке русский и английски текст (строка не полностью дана). И попытка поиска по этой строке заканчивается ошибкой.

Упрощенно код выглядит так
def check(string, needle):
            return string.find(needle) != -1


Как быть ? Возможно нубский вопрос (на python пишу совсем не давно в целях автоматизации), но что то тупняк и не могу сообразить как его победить
  • Вопрос задан
  • 171 просмотр
Пригласить эксперта
Ответы на вопрос 1
@Samarkand
Перед сравнением нужно явно преобразовать строки в одинаковую кодировку:

print u'\u041d\u043e\u043c\u0435\u0440 \u0442\u043e\u0447\u043a\u0438'.encode('utf-8')
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы