## 6.7.1 Mapping Operators to Functions

This table shows how abstract operations correspond to operator symbols in the Python syntax and the functions in the operator module.

Operation Syntax Function
Addition `a + b` `add(a, b)`
Concatenation `seq1 + seq2` `concat(seq1, seq2)`
Containment Test `o in seq` `contains(seq, o)`
Division `a / b` `div(a, b) #` without `__future__.division`
Division `a / b` `truediv(a, b) #` with `__future__.division`
Division `a // b` `floordiv(a, b)`
Bitwise And `a & b` `and_(a, b)`
Bitwise Exclusive Or `a ^ b` `xor(a, b)`
Bitwise Inversion `~ a` `invert(a)`
Bitwise Or `a | b` `or_(a, b)`
Exponentiation `a ** b` `pow(a, b)`
Identity `a is b` `is_(a, b)`
Identity `a is not b` `is_not(a, b)`
Indexed Assignment `o[k] = v` `setitem(o, k, v)`
Indexed Deletion `del o[k]` `delitem(o, k)`
Indexing `o[k]` `getitem(o, k)`
Left Shift `a << b` `lshift(a, b)`
Modulo `a % b` `mod(a, b)`
Multiplication `a * b` `mul(a, b)`
Negation (Arithmetic) `- a` `neg(a)`
Negation (Logical) `not a` `not_(a)`
Right Shift `a >> b` `rshift(a, b)`
Sequence Repitition `seq * i` `repeat(seq, i)`
Slice Assignment `seq[i:j]` = values `setslice(seq, i, j, values)`
Slice Deletion `del seq[i:j]` `delslice(seq, i, j)`
Slicing `seq[i:j]` `getslice(seq, i, j)`
String Formatting `s % o` `mod(s, o)`
Subtraction `a - b` `sub(a, b)`
Truth Test `o` `truth(o)`
Ordering `a < b` `lt(a, b)`
Ordering `a <= b` `le(a, b)`
Equality `a == b` `eq(a, b)`
Difference `a != b` `ne(a, b)`
Ordering `a >= b` `ge(a, b)`
Ordering `a > b` `gt(a, b)`