Looks like you need the struct module. That can convert binary fields of various lengths into the appropriate Python types, and vice versa.
>>> import struct >>> struct.unpack("L", '\xf0\xf0\xff\xfe') (4278186224L,) >>> struct.unpack("l", '\xf0\xf0\xff\xfe') (-16781072,) >>> regards Steve chengang.beij...@gmail.com wrote: > Hi, > > ord('\xf0') works and it only works for char. Do you know any way to > convet > '\xf0\xf0' and '\xf0\xf0\xff\xfe' to integer? > > > Br, Chen Gang > > On Dec 12, 12:40 pm, Steve Holden <st...@holdenweb.com> wrote: >> chengang.beij...@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...@comhem.se> wrote: >>>> On Dec 12, 2008, at 4:48 AM, chengang.beij...@gmail.com wrote: >>>>> int('\xf0',16) doesn't work, any way to do that? >>>>> -- >>>>> http://mail.python.org/mailman/listinfo/python-list >>>> 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: >> >> >> >>>>> ord('A') >> 65 >>>>> chr(65) >> 'A' >>>>> ord('\xf0') >> 240 >>>>> chr(240) >> '\xf0' >>>>> hex(240) >> '0xf0' >> >> So just apply the ord() function to the character and you'll get its >> integer value! >> >> regards >> Steve >> -- >> Steve Holden +1 571 484 6266 +1 800 494 3119 >> Holden Web LLC http://www.holdenweb.com/ > > -- > http://mail.python.org/mailman/listinfo/python-list > -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC http://www.holdenweb.com/ -- http://mail.python.org/mailman/listinfo/python-list