Gli iteratori di Python sono grandiosi e tutti, ma a volte desidero davvero uno stile C per il ciclo, non un ciclo foreach. Ad esempio, ho una data di inizio e una data di fine e voglio fare qualcosa per ogni giorno in quell'intervallo. Posso fare questo con un ciclo while, naturalmente:Python ha un equivalente di ciclo for (non foreach)
current = start
while current <= finish:
do_stuff(current)
current += timedelta(1)
Questo funziona, ma è 3 linee invece di 1 (in C o nelle lingue C-based) e mi ritrovo spesso dimenticando di scrivere la linea di incremento, specialmente se il corpo del ciclo è piuttosto complesso. C'è un modo più elegante e meno incline agli errori di farlo in Python?
+1 non solo perché è l'unica risposta che ** funziona davvero ** ma anche perché è quello giusto. Seriamente, non votare le risposte che * sembrano buone * –