在py3k中等效的chr()返回一个字节对象

发布于 2021-01-29 18:06:32

Python2.x具有chr(),它会将0-255范围内的数字转换为带有一个带有该数字值的字符的字节字符串,并且unichr(),它会将0-0x10FFFF范围内的数字转换成带有一个带有该Unicode字符的Unicode字符串。代码点。Python
3.x替换unichr()chr(),以保持其“默认为Unicode字符串”策略,但是我找不到能完全执行旧版本的任何功能chr()。该2to3实用程序(从2.6版开始)chr不包含任何调用,通常这是不正确的:(

(这是用于解析和序列化以8位字节形式明确定义的文件格式的。)

关注者
0
被浏览
50
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    考虑使用bytearray((255,))在Python2和Python3中相同。在这两个Python世代中,都可以将所得的bytearray-
    object转换为bytes(obj),它是Python2中的str()和Python3中的实型bytes()的别名。

    # Python2
    >>> x = bytearray((32,33))
    >>> x
    bytearray(b' !')
    >>> bytes(x)
    ' !'
    
    # Python3
    >>> x = bytearray((32,33))
    >>> x
    bytearray(b' !')
    >>> bytes(x)
    b' !'
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看