how to convert '\xf0' to 0xf0 ?
steve at holdenweb.com
Fri Dec 12 05:40:32 CET 2008
chengang.beijing at gmail.com wrote:
> '\xf0' is the value read from a binary file, I need to change this
> kinds strings to int for further processing...
> if it is in C, then '\xf0' is an integer and it can be handled
> directly, but in python, it is a string.
> and both int('10',16) and int('0x10',16) returns 16.
> Br, Chen Gang
> On Dec 12, 12:06 pm, Tommy Nordgren <tommy.nordg... at comhem.se> wrote:
>> On Dec 12, 2008, at 4:48 AM, chengang.beij... at gmail.com wrote:
>>> int('\xf0',16) doesn't work, any way to do that?
>> Should be int('10',16)
>> or int('0x10',16)
It seems that you want the integer value of a character you read in from
a file. Is this correct? Note that '\xf0' is the interpreter's way of
representing a one-character string whose only character has the
hexadecimal value f0, because the actual character is not printable: the
backslash has a special meaning in character string literals.
Any one-character string, however, can be converted to the equivalent
integer value using the ord() function. You can convert the other way
using the chr() function:
So just apply the ord() function to the character and you'll get its
Steve Holden +1 571 484 6266 +1 800 494 3119
Holden Web LLC http://www.holdenweb.com/
More information about the Python-list