python字符串编码转换函数

python字符串编码转换函数,第1张

def str_to_ascii(str_input):
    """
    字符串编码转换函数
    @author:Honfeiyinxue,2022年4月26日
    :str_input 输入待转换为二进制的字符串:
    :return: 输出元组,元组的4个元素分别是字符串的原始字符( str_output_origi)对应的二进制(string_output_binary),
    十进制(string_output_decimal)、十六进制编码(string_output_hexadecimal)
    """
    string_process = str_input
    str_output_origin = ''
    string_output_binary = ''
    string_output_decimal = ''
    string_output_hexadecimal = ''
    for ch in string_process:
        #   汉字编码16比特,例如“飞”的二进制码为1001100011011110,ascii码8比特,编排对齐方式不同。
        if 0 <= ord(ch) <= 128:
            str_output_origin += '{: <8}'.format(ch) + ' '
            string_output_binary += '{:0>8}'.format(bin(ord(ch)).replace('0b', '')) + ' '
            string_output_decimal += '{: <8}'.format(str(ord(ch))) + ' '
            string_output_hexadecimal += "{: <8}".format(hex(ord(ch))) + ' '
        else:
            str_output_origin += '{: <16}'.format(ch) + ' '
            string_output_binary += '{:0>16}'.format(bin(ord(ch)).replace('0b', '')) + ' '
            string_output_decimal += '{: <16}'.format(str(ord(ch))) + ' '
            string_output_hexadecimal += "{: <16}".format(hex(ord(ch))) + ' '
    return str_output_origin, string_output_binary, string_output_hexadecimal, string_output_decimal


string = "公平自由平等abc"
for item in str_to_ascii(string):
    print(item)

运行结果

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/758322.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-01
下一篇 2022-05-01

发表评论

登录后才能评论

评论列表(0条)

保存