Re: Assigning to global variables from within a function
by Irmen de Jong other posts by this author
Jul 12 2003 8:42PM messages near this date
Assigning to global variables from within a function
|
Re: Assigning to global variables from within a function
Psymaster wrote:
> I want to do this:
>
> int= 0
>
> def change_int():
> int += 1
>
> change_int()
>
> but of course it doesn't work, Python thinks it is a local
> variable and refuses to reference the global one. So what would
> be a good way of doing this. Note that creating a new global
> variable from within the function isn't convenient because the
> function is intended to be used in loops.
A function that modifies a global is generally considered bad
design (it has 'side-effects').
But if you really need to do this, just add a 'global' statement:
def change_i():
global i
i+=1
PS don't use 'int' for a name of your own, it is a builtin in Python.
--
http://mail.python.org/mailman/listinfo/python-list
Thread:
Psymaster
Irmen de Jong
Psymaster
Tom Plunket
W Isaac Carroll
|