Python Language Reference Manual by Guido van Rossum and Fred L. Drake, Jr. Paperback (6"x9"), 120 pages ISBN 0954161785 RRP £12.95 ($19.95) Sales of this book support the Python Software Foundation! Get a printed copy>>> 
5.7 Shifting operations
The shifting operations have lower priority than the arithmetic operations:
shift_expr
a_expr


shift_expr
( "<{}<"  ">{}>" )a_expr
These operators accept plain or long integers as arguments. The arguments are converted to a common type. They shift the first argument to the left or right by the number of bits given by the second argument.
A right shift by n bits is defined as division by
pow(2,n)
. A left shift by n bits is defined as
multiplication with pow(2,n)
; for plain integers there is
no overflow check so in that case the operation drops bits and flips
the sign if the result is not less than pow(2,31)
in absolute
value. Negative shift counts raise a ValueError
exception.
ISBN 0954161785  Python Language Reference Manual  See the print edition 