Je suis intéressé à prendre un seul personnage,
c = 'c' # for example
hex_val_string = char_to_hex_string(c)
print hex_val_string
sortie:
63
Quelle est la manière la plus simple de procéder? Des éléments de bibliothèque de chaînes prédéfinis?
Il existe plusieurs façons de procéder:
>>> hex(ord("c"))
'0x63'
>>> format(ord("c"), "x")
'63'
>>> "c".encode("hex")
'63'
Pour utiliser le codage hex
dans Python 3, utilisez
>>> codecs.encode(b"c", "hex")
b'63'
Cela pourrait aider
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
Ce code contient des exemples de conversion de ASCII vers et depuis hexadécimal. Dans votre cas, la ligne que vous souhaitez utiliser est str(binascii.hexlify(c),'ascii')
.