Hex - Using python to dump hexidecimals into YAML

De openkb
Aller à : Navigation, rechercher

Sommaire

Questions

Now I m dumping into a YAML document. It s working as it should for the most part. When I try to dump a hexadecimal such as "0x2A" it converts to 42. Isn t there any way to maintain it s hexadecimal format? A string won t work sadly. And int( 0x2A, 16) also just gives me a 42.

Answers

You may be looking for hex(0x2a) == hex(42) == 0x2a .

Unless you re looking for a way to convince your existing dumping function to use hexadecimal instead of decimal notation...


Answering to your comment below, if the problem is that you want upper case letters for the hexadecimal digits (but lower case for the 0x) then you have to use string formatting. You can choose one of the following:

"0x%02X" % 42                     # the old way
"0x{:02X}".format(42) == "0x2A"   # the new way

In both cases, you ll have to print the 0x explicitly, followed by a hexadecimal number of at least two digits in upper case, left-padded with a zero if your number has only one digit. This is denoted by the format 02X, same as in C s printf.

Source

License : cc by-sa 3.0

http://stackoverflow.com/questions/18666816/using-python-to-dump-hexidecimals-into-yaml

Related

Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Outils