Le operazioni aritmetiche binarie hanno il livello di priorità convenzionale. Da notare che alcune di queste operazioni si applicano anche a certi tipi non numerici. A parte l'operatore di potenza, ci sono solo due livelli, uno per gli operatori di moltiplicazione ed uno per gli operatori di addizione:
L'operatore * (moltiplicazione) restituisce il prodotto dei
suoi argomenti.  Gli argomenti devono essere o entrambi numeri o un
argomento deve essere un intero (semplice o long) e l'altro deve
essere una sequenza.  Nel primo caso, i numeri vengono convertiti in
un tipo comune e quindi moltiplicati tra loro.  Nell'altro caso, viene
eseguita una ripetizione della sequenza; un fattore di ripetizione
negativo produce una sequenza vuota.
Gli operatori / (divisione) e // (divisione con
arrotondamento) producono il quoziente dei propri argomenti.  Gli
argomenti numerici vengono prima convertiti in un tipo comune.
Divisioni tra numeri interi semplici o long producono un intero dello
stesso tipo; il risultato è quello della divisione matematica con la
funzione `floor' applicata al risultato.  Divisioni per zero sollevano
l'eccezione ZeroDivisionError. 
L'operatore % (modulo) produce il resto della divisione tra il
primo argomento ed il secondo.  Gli argomenti numerici vengono prima
convertiti in un tipo comune.  Se il secondo operando è zero viene
sollevata l'eccezione ZeroDivisionError.  Gli argomenti
possono essere numeri in virgola mobile, per esempio 3.14%0.7
è uguale a 0.34 (dato che 3.14 è uguale a 
4*0.7 + 0.34.)  L'operatore modulo produce sempre un risultato
con lo stesso segno del secondo operando (o zero); il valore assoluto
del risultato è rigorosamente più piccolo del valore assoluto del secondo operando5.1.
Gli operatori di divisione e modulo per gli interi sono legati dalla
seguente caratteristica: x == (x/y)*y + (x%y).  La divisione
ed il modulo per gli interi sono legati anche dalla funzione built-in
divmod(): divmod(x, y) == (x/y, x%y).  Queste
caratteristiche non si applicano ai numeri in virgola mobile;
caratteristiche simili si applicano approssimativamente dove
x/y viene sostituito da floor(x/y) o
floor(x/y) - 15.2.
L'operatore + (addizione) produce la somma dei propri
argomenti.  Gli argomenti devono essere o entrambi numeri o entrambi
sequenze dello stesso tipo.  Nel primo caso, i numeri vengono
convertiti in un tipo comune e quindi sommati tra loro.  Nell'altro
caso invece, le sequenze vengono concatenate.
L'operatore - (sottrazione) produce la differenza tra i propri
argomenti.  Gli argomenti numerici vengono prima convertiti in un tipo
comune. 
abs(x%y) < abs(y) è matematicamente vero, per i
    numeri in virgola mobile può non essere numericamente vero a causa
    dell'arrotondamento.  Per esempio, assumendo una piattaforma in
    cui i numeri in virgola mobile di Python siano IEEE 754 in
    precisione doppia, affinché -1e-100 % 1e100 abbia lo
    stesso segno di 1e100, il risultato computato 
    -1e-100 + 1e100 che è numericamente esattamente uguale a
    1e100.  La funzione fmod() del modulo
    math restuisce un risultato il cui segno corrisponde al
    segno del primo argomento e perciò, in questo caso, restituisce
    -1e-100.  Quale approccio sia il più appropriato, dipende
    dall'applicazione. 
x è molto vicino ad un intero esatto multiplo di
    y, è possibile che floor(x/y) sia più grande di
    (x-x%y)/y a causa dell'arrotondamento.  In questo caso,
    Python restituisce quest'ultimo risultato per garantire che 
    divmod(x,y)[0] * y + x % y sia il più vicino possibile
    ad x.