From: Guido van Rossum Date: Fri, 17 Mar 1995 15:59:52 +0000 (+0000) Subject: added table of precedences X-Git-Tag: v1.2b4~24 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=4dd6b84e5fafb53a678c7c6eeb50bba0f3ce800a;p=thirdparty%2FPython%2Fcpython.git added table of precedences --- diff --git a/Doc/ref/ref5.tex b/Doc/ref/ref5.tex index 3db25280d6e8..8f18c2253920 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 3db25280d6e8..8f18c2253920 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}