PDA

View Full Version : [PYTHON] Funzione che lavora solo su vettore originale senza modificarlo


application
06-09-2014, 15:10
Ciao a tutti. Ho un vettore su cui richiamo un certo numero di volte una funzione tramite un ciclo for, solo che ogni ciclo lavora sul vettore originale quando invece vorrei lavorasse su quello modificato dall'ultima iterazione.
Come posso agire?

GByTe87
08-09-2014, 11:50
Senza vedere il codice attuale (e, soprattutto, come si comporta la funzione) difficilmente possiamo darti una mano. :)

ingframin
13-09-2014, 22:05
Ciao a tutti. Ho un vettore su cui richiamo un certo numero di volte una funzione tramite un ciclo for, solo che ogni ciclo lavora sul vettore originale quando invece vorrei lavorasse su quello modificato dall'ultima iterazione.
Come posso agire?

Puoi:
1) fare si che le funzioni restituiscano il vettore modificato e assegnare il valore di ritorno al nome del vettore originale:

def foo(vec):
#fai qualcosa
return vec_modified


Vector = [...]

for x in range(millemila):
Vector = foo(Vector)


2) sostituire il for con una serie di chiamate ricorsive:

Vector = [...]

def foo(vec):
if vec is come_voglio_io:
return vec
#fai qualcosa e genera vec2
return foo(vec2)

Vfinale = foo(Vector)


Se poi posti il codice ti diamo risposte pił precise