unicode python 3等价

unicode python 3 equivalent

我目前正在尝试将一段代码从 python 2 转换为 python 3,但我找不到 python 3 等同于 unicode 的代码:

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

Python 3 中的常规字符串 是 unicode。你必须在 Python 3 中特意去获取字节串(非 Unicode)。