Ho un problema con la funzione di tempo per l'ottimizzazione del codice. Ad esempio, scrivendo funzioni con parametri in un file, chiamiamolo myfunctions.py
contenente:Python Timeit e "nome globale ... non definito"
def func1(X):
Y = X+1
return Y
e provo questa funzione in un secondo file test.py
dove chiamo il timer per testare le prestazioni del codice (in ovviamente più complessa problemi) che contengono:!
import myfunctions
X0 = 1
t = Timer("Y0 = myfunctions.func1(X0)")
print Y0
print t.timeit()
il Y0
non viene calcolato, e anche se io commento print Y0
linea l'errore si è verificato. global name 'myfunctions' is not defined
Se specifico il setup con il comando
t = Timer("Y0 = myfunctions.func1(X0)","import myfunctions")
ora l'errore si è verificato global name 'X0' is not defined
.
Qualcuno sa come risolvere questo? Grazie molto.
Possibile duplicato di [Getting "nome globale 'pippo' non è definito" con Python's timeit] (https://stackoverflow.com/questions/551797/getting-global-name-foo-is-not-defined-with -pythons-timeit) – sds