python - Make global function known for imported function -
i writing ipythonnotebook , make code less clustered, defining functions not in main notebook. outplace them in external .py-files import.
why doesn't test() know of u()?
in mymodule.py-file
def test(): number = u()+u() return number and main file (in notebook)
from mymodul import test def u(): bla = 1 return bla test() my test()-function imported well, not know u:
nameerror: global name 'u' not defined
you cannot this; globals ever looked in module function defined in.
you'd instead give function parameter accepts u argument:
def test(u): number = u()+u() return number and in main file:
def u(): bla = 1 return bla test(u) if python worked way expected to, you'd create many hard-to-trace problems, namespaces (like modules) meant solve in first place.
Comments
Post a Comment