create global variables?

Gary Herron gherron at islandtraining.com
Mon Oct 30 18:21:30 CET 2006


Alistair King wrote:
> Hi,
>
> is there a simple way of creating global variables within a function?
>
>   
Use the "global" statement within a function to bind a variable to a
global. 

See http://docs.python.org/ref/global.html for details.


>>> def x():
...          global g
...          g = 123
...
>>> x()
>>> g
123
>>>

Gary Herron




> ive tried simply adding the variables in:
>
> def function(atom, Xaa, Xab):
>     Xaa = onefunction(atom)
>     Xab = anotherfunction(atom)
>
> if i can give something like:
>
> function('C')    #where atom = 'C' but not necessarly include Xaa or Xab
>
> i would like to recieve:
>
> Caa = a float
> Cab = another float
>
> ive tried predefining Xaa and Xab before the function but they are
> global values and wont change within my function. Is there a simple way
> round this, even if i call the function with the variables ('C', Caa, Cab)?
> ..............................................................................................................................
>
> some actual code:
>
> # sample dictionaries
> DS1v = {'C': 6}
> pt = {'C': 12.0107}
>
> def monoVarcalc(atom):
>     a = atom + 'aa'
>     Xaa = a.strip('\'')
>     m = atom + 'ma'
>     Xma = m.strip('\'')
>     Xaa = DS1v.get(atom)
>     Xma = pt.get(atom)
>     print Xma
>     print Xaa
>
> monoVarcalc('C')
>
> print Caa
> print Cma
> ..............................................................................................................................
> it seems to work but again i can only print the values of Xma and Xaa
>
> ?
>
> Alistair
>
>   




More information about the Python-list mailing list