TypeError: аргумент 2 ljust() должен быть символом, а не юникодом

#python #python-2.7 #python-unicode #s2

#python #python-2.7 #python-юникод #s2

Вопрос:

Я получаю следующую ошибку при использовании библиотеки s2sphere в python2.7 в этом расположении.

ljust() argument 2 must be char, not unicode

Метод — это ссылка на файл на GH:

     @classmethod
    def from_token(cls, token):
        """Creates a CellId from a hex encoded cell id string, called a token.
        :param str token:
            A hex representation of the cell id. If the input is shorter than
            16 characters, zeros are appended on the right.
        """
        return cls(int(token.ljust(16, '0'), 16))
  

Файл, похоже, закодирован в ASCII, поэтому я ломаю голову над тем, почему я это вижу

Ответ №1:

Файл импортирует unicode_literals вверху:

 from __future__ import print_function, unicode_literals, division
  

Следовательно, ‘0’ — это строка в Юникоде, а параметр ‘token’ должен соответствовать юникоду