Hello,
I am trying to use global variables to control the behaviour of Python
functions called from Sage. (Yes, I know there is probably a better way to
do it, but I am still interested in what's going on here.)
If in foo.py I have
def bar():
print blah
def baz():
global zilch
zilch = 0
and, in Sage I do:
sage: from foo import bar
sage: global blah
sage: blah = 1
sage: bar()
the result is:
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-4-4c8101bd3664> in <module>()
----> 1 bar()
/home/leopardi/sync/src/sage-sandbox/Boolean-Cayley-graphs/foo.py in bar()
1 def bar():
----> 2 print blah
NameError: global name 'blah' is not defined
If instead I do:
sage: from foo import baz
sage: baz()
sage: print zilch
the result is:
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-3-af9f97ada0b7> in <module>()
----> 1 print zilch
NameError: name 'zilch' is not defined
Is there a way in Sage that I can assign to a global variable that a called
Python function will recognize as a global variable?
Thanks, Paul
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.