美文网首页
str与bytes数据类型

str与bytes数据类型

作者: zy小太阳 | 来源:发表于2018-12-18 19:09 被阅读0次

    字符串转二进制

    str.encode()
    (括号内不写默认为utf-8)

    二进制转字符串

    str1 = str.encode()
    str1.decode()

    b = bytearray(str.encode())
    print(b) <--> b.decode

    bytearray bytearray和bytes不一样的地方在于,bytearray是可变的。

    eg:

    In [26]: str1
    Out[26]: '人生苦短,我用Python!'

    In [28]: b1=bytearray(str1.encode())

    In [29]: b1
    Out[29]: bytearray(b'\xe4\xba\xba\xe7\x94\x9f\xe8\x8b\xa6\xe7\x9f\xad\xef
    \xbc\x8c\xe6\x88\x91\xe7\x94\xa8Python!')

    In [30]: b1.decode()
    Out[30]: '人生苦短,我用Python!'

    In [31]: b1[:6]=bytearray('生命'.encode())

    In [32]: b1
    Out[32]: bytearray(b'\xe7\x94\x9f\xe5\x91\xbd\xe8\x8b\xa6\xe7\x9f\xad\xef
    \xbc\x8c\xe6\x88\x91\xe7\x94\xa8Python!')

    In [33]: b1.decode()
    Out[33]: '生命苦短,我用Python!

    • python2中:对于字符串和bytes类型的数据没有明显的区分
    • python3中:对于字符串和bytes类型的数据有明显的区分
      将bytes类型的数据转换为字符串使用decode(‘编码类型’)
      将字符串转换为bytes类型的数据使用encode(‘编码类型’)
    • bytearray和bytes类型的数据是有区别的:前者可变,后者不可变

    相关文章

      网友评论

          本文标题:str与bytes数据类型

          本文链接:https://www.haomeiwen.com/subject/ldtrkqtx.html