2016-02-03 3 views
0

В настоящее время я пытаюсь преобразовать фрагмент кода из питона 2 на Python 3 и я не могу найти эквивалент Python 3 из unicode:юникода питон 3 эквивалент

class NavigableString(unicode_literals, PageElement): 

    def toEncoding(self, s, encoding=None): 
    """Encodes an object to a string in some encoding, or to Unicode. 
    .""" 
    if isinstance(s, unichr()): 
     if encoding: 
      s = s.encode(encoding) 
    elif isinstance(s, str): 
     if encoding: 
      s = s.encode(encoding) 
     else: 
      s = unicode_literals(s) 
    else: 
     if encoding: 
      s = self.toEncoding(str(s), encoding) 
     else: 
      s = unicode_literals(s) 
    return s 
+0

Это 'str' ..... –

+0

... что можно сказать, что все шансы, что весь код, который вы смотрите здесь, не нужны в Python 3 и могут быть удалены прямо, а не переведены, если только вы начиная с байтов, а не из обычных строк. –

+0

это может помочь. [как сделать строки unicode с python 3] (http://stackoverflow.com/questions/6812031/how-to-make-unicode-string-with-python3) –

ответ

2

Регулярные строки в Python 3 юникода , Вы должны уйти со своего пути в Python 3, чтобы получить bytestring (не Unicode).