我有兴趣接受一个角色,
c = 'c' # for example
hex_val_string = char_to_hex_string(c)
print hex_val_string
Run Code Online (Sandbox Code Playgroud)
输出:
63
Run Code Online (Sandbox Code Playgroud)
这个最简单的方法是什么?任何预定义的字符串库?
Sve*_*ach 75
有几种方法可以做到这一点:
>>> hex(ord("c"))
'0x63'
>>> format(ord("c"), "x")
'63'
>>> "c".encode("hex")
'63'
Run Code Online (Sandbox Code Playgroud)
要hex
在Python 3中使用编码,请使用
>>> codecs.encode(b"c", "hex")
b'63'
Run Code Online (Sandbox Code Playgroud)
小智 5
这可能有帮助
import binascii
x = b'test'
x = binascii.hexlify(x)
y = str(x,'ascii')
print(x) # Outputs b'74657374' (hex encoding of "test")
print(y) # Outputs 74657374
x_unhexed = binascii.unhexlify(x)
print(x_unhexed) # Outputs b'test'
x_ascii = str(x_unhexed,'ascii')
print(x_ascii) # Outputs test
Run Code Online (Sandbox Code Playgroud)
此代码包含将 ASCII 字符与十六进制字符相互转换的示例。在您的情况下,您要使用的行是str(binascii.hexlify(c),'ascii')
.
考虑到您的输入字符串位于inputString
变量中,您可以简单地.encode('utf-8').hex()
在此变量之上应用函数来实现结果。
inputString = "Hello"
outputString = inputString.encode('utf-8').hex()
Run Code Online (Sandbox Code Playgroud)
由此产生的结果将是48656c6c6f
。
归档时间: |
|
查看次数: |
110803 次 |
最近记录: |