globals() (example from 00-start.py)

Returns a dictionary containing the current scopes global variables.

 
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__']
>>> globals()['a'] = 123
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'a']
>>> a
123

Here is how globals() can be used to inject objects into the global IPython name space, making objects available on the command line:

 
#!/usr/bin/env python
#
# file name ~/.config/ipython/profile_default/startup/00-start.py
#

import blissDESY.magics # to enable the magics
import IPython.core.getipython
from bliss.config import static
config = static.get_config()
print( "00-start: global-creating session")
session =  config.get('sim_session')
session.setup()
for key in session.env_dict.keys():
    print( "00-start: global-creating %s" % key)
    globals()[key] = session.env_dict[ key]