Mentre osservavo il codice sorgente dello asyncore module mi sono imbattuto nel metodo this. Io includo qui senza contesto, come sembra essere abbastanza autonomo:Perché assegnare una variabile locale a un valore iniziale immediatamente prima di assegnarla?
def initiate_send(self):
num_sent = 0
num_sent = dispatcher.send(self, self.out_buffer[:512])
self.out_buffer = self.out_buffer[num_sent:]
La mia domanda: Perché è num_sent
primo set a 0
, ma poi subito impostato di nuovo per un altro valore?
Se l'avessi trovato da nessuna parte ma nel codice sorgente di Python, direi che questa riga di codice è superflua. C'è qualche punto ad esso, o è dead code?
E, a parte un retabbing nel 2000, è stato invariato da allora. – nneonneo
Grazie per averlo chiarito. Avevo paura di aver perso qualcosa di molto basilare su come funziona Python. :) –