Best way to convert sequence of bytes to long integer

Steven D'Aprano steve at
Wed Jan 20 08:36:22 CET 2010

I have a byte string (Python 2.x string), e.g.:

s = "g%$f yg\n1\05"
assert len(s) == 10

I wish to convert it to a long integer, treating it as base-256. 
Currently I'm using:

def makelong(s):
    n = 0
    for c in s:
        n *= 256
        n += ord(c)
    return n

which gives:

>>> makelong(s)

Is this the best way, or have I missed some standard library function?

Thanks in advance,


More information about the Python-list mailing list