Найти - Пользователи
Полная версия: Проблема с кодировкой или условием?
Начало » Python для новичков » Проблема с кодировкой или условием?
1
steel98
Используется библиотека twisted, пишется ICQ бот.

Бот получает сообщение, например строку “hello”
Но условие всегда ложно. В чем может быть дело?
       def receiveMessage(self, user, multiparts, flags):
print "\n< From: ", user.name
print "< Message: ", multiparts[0][0].decode('cp1251')
command = multiparts[0][0].lower().split(' ')

if command[0] == 'hello':
self.sendMessage(user.name, 'ur')
else:
self.sendMessage(user.name, 'shit')
o7412369815963
в дебагере посмотри что в command прилетает, какой тип объекта?
ta
наверное, перед/после hello есть что-то еще - хтмл теги или другой мусор.
steel98
Да, посылаю символ ‘a’ из аськи, он получает ‘\x00a\x00\r\x00\n’, как с этим работать? Есть какие-нибудь готовые функции?
Андрей Светлов
Это utf-16be
crchemist
Андрей Светлов
Это utf-16be
>>> '\x00a\x00\r\x00\n'.decode('utf-16-be').strip() == 'a'
True
>>>
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB