From 4dd6b84e5fafb53a678c7c6eeb50bba0f3ce800a Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Fri, 17 Mar 1995 15:59:52 +0000 Subject: added table of precedences --- Doc/ref/ref5.tex | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ Doc/ref5.tex | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 102 insertions(+) diff --git a/Doc/ref/ref5.tex b/Doc/ref/ref5.tex index 3db2528..8f18c22 100644 --- a/Doc/ref/ref5.tex +++ b/Doc/ref/ref5.tex @@ -705,3 +705,54 @@ tuple, but rather yields the value of that expression (condition). (To create an empty tuple, use an empty pair of parentheses: \verb@()@.) + +\section{Summary} + +The following table summarizes the operator precedences in Python, +from lowest precedence (least binding) to highest precedence (most +binding). Operators in the same box have the same precedence. Unless +the syntax is explicitly given, operators are binary. Operators in +the same box group left to right (except for comparisons, which +chain from left to right --- see above). + +\begin{center} +\begin{tabular}{|c|c|} +\hline +\code{or} & Boolean OR \\ +\hline +\code{and} & Boolean AND \\ +\hline +\code{not} \var{x} & Boolean NOT \\ +\hline +\code{in}, \code{not} \code{in} & Membership tests \\ +\code{is}, \code{is} \code{not} & Identity tests \\ +\code{<}, \code{<=}, \code{>}, \code{>=}, \code{<>}, \code{!=}, \code{=} & + Comparisons \\ +\hline +\code{|} & Bitwise OR \\ +\hline +\code{\^} & Bitwise XOR \\ +\hline +\code{\&} & Bitwise AND \\ +\hline +\code{<<}, \code{>>} & Shifts \\ +\hline +\code{+}, \code{-} & Addition and subtraction \\ +\hline +\code{*}, \code{/}, \code{\%} & Multiplication, division, remainder \\ +\hline +\code{+\var{x}}, \code{-\var{x}} & Positive, negative \\ +\code{\~\var{x}} & Bitwise not \\ +\hline +\code{\var{x}.\var{attribute}} & Attribute reference \\ +\code{\var{x}[\var{index}]} & Subscription \\ +\code{\var{x}[\var{index}:\var{index}]} & Slicing \\ +\code{\var{f}(\var{arguments}...)} & Function call \\ +\hline +\code{(\var{expressions}\ldots)} & Binding or tuple display \\ +\code{[\var{expressions}\ldots]} & List display \\ +\code{\{\var{key}:\var{datum}\ldots\}} & Dictionary display \\ +\code{`\var{expression}\ldots`} & String conversion \\ +\hline +\end{tabular} +\end{center} diff --git a/Doc/ref5.tex b/Doc/ref5.tex index 3db2528..8f18c22 100644 --- a/Doc/ref5.tex +++ b/Doc/ref5.tex @@ -705,3 +705,54 @@ tuple, but rather yields the value of that expression (condition). (To create an empty tuple, use an empty pair of parentheses: \verb@()@.) + +\section{Summary} + +The following table summarizes the operator precedences in Python, +from lowest precedence (least binding) to highest precedence (most +binding). Operators in the same box have the same precedence. Unless +the syntax is explicitly given, operators are binary. Operators in +the same box group left to right (except for comparisons, which +chain from left to right --- see above). + +\begin{center} +\begin{tabular}{|c|c|} +\hline +\code{or} & Boolean OR \\ +\hline +\code{and} & Boolean AND \\ +\hline +\code{not} \var{x} & Boolean NOT \\ +\hline +\code{in}, \code{not} \code{in} & Membership tests \\ +\code{is}, \code{is} \code{not} & Identity tests \\ +\code{<}, \code{<=}, \code{>}, \code{>=}, \code{<>}, \code{!=}, \code{=} & + Comparisons \\ +\hline +\code{|} & Bitwise OR \\ +\hline +\code{\^} & Bitwise XOR \\ +\hline +\code{\&} & Bitwise AND \\ +\hline +\code{<<}, \code{>>} & Shifts \\ +\hline +\code{+}, \code{-} & Addition and subtraction \\ +\hline +\code{*}, \code{/}, \code{\%} & Multiplication, division, remainder \\ +\hline +\code{+\var{x}}, \code{-\var{x}} & Positive, negative \\ +\code{\~\var{x}} & Bitwise not \\ +\hline +\code{\var{x}.\var{attribute}} & Attribute reference \\ +\code{\var{x}[\var{index}]} & Subscription \\ +\code{\var{x}[\var{index}:\var{index}]} & Slicing \\ +\code{\var{f}(\var{arguments}...)} & Function call \\ +\hline +\code{(\var{expressions}\ldots)} & Binding or tuple display \\ +\code{[\var{expressions}\ldots]} & List display \\ +\code{\{\var{key}:\var{datum}\ldots\}} & Dictionary display \\ +\code{`\var{expression}\ldots`} & String conversion \\ +\hline +\end{tabular} +\end{center} -- cgit v0.12