[Python-Dev] 2.5 and beyond

Andrew Koenig ark at acm.org
Fri Jun 30 18:30:28 CEST 2006


> The question is, what behaviour is preferable for this code:
> 
>     g = 1
>     def f():
>         g += 1
> 
>     f()
> 
> Should this raise an UnboundLocalError or should it increment g?

I think it should increment (i.e. rebind) g, for the same reason that

	g = [1]
	def f():
		g[0] += 1
	f()

rebinds g[0].





More information about the Python-Dev mailing list