GNU Info

Info Node: (python2.1-ref.info)Integer and long integer literals

(python2.1-ref.info)Integer and long integer literals


Next: Floating point literals Prev: Numeric literals Up: Literals
Enter node , (file) or (file)node

Integer and long integer literals
---------------------------------

Integer and long integer literals are described by the following
lexical definitions:

     longinteger:    integer ("l"|"L")
     integer:        decimalinteger | octinteger | hexinteger
     decimalinteger: nonzerodigit digit* | "0"
     octinteger:     "0" octdigit+
     hexinteger:     "0" ("x"|"X") hexdigit+
     nonzerodigit:   "1"..."9"
     octdigit:       "0"..."7"
     hexdigit:        digit|"a"..."f"|"A"..."F"

Although both lower case `l' and upper case `L' are allowed as suffix
for long integers, it is strongly recommended to always use `L', since
the letter `l' looks too much like the digit `1'.

Plain integer decimal literals must be at most 2147483647 (i.e., the
largest positive integer, using 32-bit arithmetic).  Plain octal and
hexadecimal literals may be as large as 4294967295, but values larger
than 2147483647 are converted to a negative value by subtracting
4294967296.  There is no limit for long integer literals apart from
what can be stored in available memory.

Some examples of plain and long integer literals:

     7     2147483647                        0177    0x80000000
     3L    79228162514264337593543950336L    0377L   0x100000000L


automatically generated by info2www version 1.2.2.9