【问题标题】:List of hex string representations need to be XOR-ed十六进制字符串表示列表需要异或
【发布时间】:2016-07-26 13:37:17
【问题描述】:

我需要对十六进制值列表进行异或,但它们是从文本文件中提取的,因此它们是字符串,如何将它们转换为十六进制值?

示例列表:

['02', '0E', '00', '12', 'D2', '00', '00', '00', '00', '00', '00', 
'00', '00', '00', '00', 'CC', '02', '0C', '00', '10', '03', '00', 
'00', '00', '00', '00', '00', '00', '00', '1D', '02', '0A', '00', 
'04', '7E', 'F3', '34', '00', '00', '00', '00', 'B5', '02', '0E', 
'00', '12', 'CF', '00', '00', '00', '00', '00', '00', '00', '00',
'00', '00', 'D1', '02', '0E', '00', '12', 'CC', '00', '00', '00',
'00',  '00', '00', '00', '00', '00', '00', 'D2', '02', '0A', '00',
'04', '7F', 'F3', '34', '00', '00', '00', '00', 'B4', '02', '0A', 
'02', '0E', '00', '12', 'CF', '00', '00', '00', '00', '00']

【问题讨论】:

  • 你的意思是字节而不是十六进制值吗?

标签: python string hex xor


【解决方案1】:

使用内置函数int()

>> print(int('0e', 16))
14

第二个参数告诉int() 期望以十六进制表示的数字,即以 16 为底。

请注意,没有“十六进制值”之类的东西;十六进制只是打印数字时使用的符号。 140xe 是同一个数字。

您当然可以使用列表推导转换整个列表:

list2 = [int(x, 16) for x in list1]

假设原始字符串列表是list1

如果要以十六进制打印数字,请使用hex(),另一个内置:

>>> print(hex(int('e', 16)))
0xe

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-03
    • 2013-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多