美文网首页
十六进制转字符串

十六进制转字符串

作者: 羋学僧 | 来源:发表于2020-07-29 10:33 被阅读0次

十六进制转字符串

你好 ====> b'e4bda0e5a5bd'
b'e4bda0e5a5bd' ====> 你好

def str_to_hex( data):
    """
    # 字符串转16进制
    :param data:
    :return:
    """
    print("===============================")
    str_16 = binascii.b2a_hex(data.encode('utf-8'))
    print("字符串%s转16进制:%s" % (data, str_16))
    return str_16


def hex_to_str(data):
    """
    # 16进制转字符串
    :param data:
    :return:
    """
    strs = (binascii.unhexlify(data)).decode()
    print("16进制%s转字符串:%s" % (data, strs))
    print("===============================")
    return strs


data = str_to_hex("你好")
hex_to_str(data)
===============================
字符串你好转16进制:b'e4bda0e5a5bd'
16进制b'e4bda0e5a5bd'转字符串:你好
===============================

字符串跟字节转化 str <==> bytes

def str_to_bytes(b):
        """
             字符串转字节  str --> bytes
        :param b:
        :return:
        """
        print("===============================")
        print(str.encode(b))  # 默认 encoding="utf-8"
        print(bytes(b, encoding="utf8"))
        print(b.encode())  # 默认 encoding="utf-8"
        return str.encode(b)

    def bytes_to_str(a):
        """
        字节转字符串 bytes  --> str
        :param b:
        :return:
        """
        print(bytes.decode(a))  # 默认encoding="utf-8"
        print(str(a, encoding="utf-8"))
        print(a.decode())  # 默认 encoding="utf-8"
        print("===============================")
data = str_to_bytes("你好")
bytes_to_str(data)

===============================
b'\xe4\xbd\xa0\xe5\xa5\xbd'
b'\xe4\xbd\xa0\xe5\xa5\xbd'
b'\xe4\xbd\xa0\xe5\xa5\xbd'
你好
你好
你好
===============================

学习来源

相关文章

网友评论

      本文标题:十六进制转字符串

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