Python 2–3 байта / ошибка строки

Я пытаюсь преобразовать библиотеку Python, созданную для Python 2, в Python 3, вот код .

У меня ошибка в строке 152. В версии Py2 функция:


def write(self, data):
    self._write_buffer += data

Ошибка:

TypeError: Невозможно преобразовать «байты» объект в str неявно

Я обнаружил, что должен декодировать переменную, поэтому я изменил функцию на:


def write(self, data):
    self._write_buffer += data.decode('utf8')

Она работает, но у меня есть еще одна ошибка в библиотеке asyncore, которая гласит, что

(Тип) должен быть байтами или буфером, а не str

Итак, что я могу сделать?

8
задан Julien Guigner 5 November 2010 в 08:52
поделиться