Steven D'Aprano wrote: > hex() of an int appears to return lowercase hex digits, and hex() of a > long uppercase. > > >>> hex(75) > '0x4b' > >>> hex(75*256**4) > '0x4B00000000L' > > By accident or design? Apart from the aesthetic value that lowercase hex > digits are ugly, should we care? > > It would also be nice if that trailing L would disappear.
Yes, but that can easily be worked around. >>> def hex(x): ... """Return the hexadecimal representation of an integer.""" ... return __builtins__.hex(x).upper().rstrip('L') ... >>> hex(75) '0X4B' >>> hex(75 * 256**4) '0X4B00000000' -- http://mail.python.org/mailman/listinfo/python-list