| # Unary operators |
| |
| -foo |
| |
| +foo |
| |
| ~foo |
| |
| -(+foo) |
| |
| -(+(~foo)) |
| |
| not foo |
| |
| # Binary operators |
| |
| foo = bar + baz + qux |
| |
| foo = bar - baz - qux |
| |
| foo = bar * baz * qux |
| |
| foo = bar / baz / qux |
| |
| foo = bar // baz // qux |
| |
| foo = bar % baz % qux |
| |
| foo = bar | baz | qux |
| |
| foo = bar & baz & qux |
| |
| foo = bar ^ baz ^ qux |
| |
| foo = bar << baz << qux |
| |
| foo = bar >> baz >> qux |
| |
| foo = ~bar | ~baz ^ -qux << quux >> baa |
| |
| # If-else operator precedence |
| -f(1) if not a else 2 + 3 |
| |
| # Logic operators |
| not foo < bar > baz <= foo >= bar != baz in foo == bar or baz |
| |
| x = "abc" in copts or "def" in copts |
| |
| x2 = "abc" not in copts and "def" not in copts |
| |
| y = "abc" in (copts or []) == False |
| |
| a = 1 + 2 if 3 + 4 else 5 + 6 |
| |
| # Augmented assignments |
| |
| foo += bar |
| |
| foo -= bar |
| |
| foo *= bar |
| |
| foo /= bar |
| |
| foo //= bar |
| |
| foo %= bar |
| |
| foo |= bar |
| |
| foo &= bar |
| |
| foo ^= bar |
| |
| foo <<= bar |
| |
| foo >>= bar |