I would like to create a python tool for dynamically setting up my environment. I would like to be able to do the following.
$ echo $FOO
$ ./foo.py
$ echo $FOO
bar
If this is possible I would greatly appreciate assistance getting this working.
It's impossible (because the Python process has its own environment). You can (though it might not be worthwhile) write a script whose output is commands for bash, and then write eval "$(./foo.py)".
FOO you want to modify, you can write export FOO=$(./foo.py) and not learn any more bash.