I'm a mechanical engineering student, and I'm building a physical simulation using PyODE.
instead of running everything from one file, I wanted to organize stuff in modules so I had:

main.py
callback.py
helper.py

I ran into problems when I realized that helper.py needed to reference variables from main, but main was the one importing helper!
so my solution was to create a 4th file, which houses variables and imports only external modules (such as time and random).
so I now have:

main.py
callback.py
helper.py
parameters.py

and all scripts have: import parameters and use: parameters.foo or parameters.bar.
Is this an acceptable practice or is this a sure fire way to make python programmers puke? :)
Please let me know if this makes sense, or if there is a more sensible way of doing it!
Thanks,
-Leav
Seems like what you want is to organize various dependencies between components. You will be better off expressing these dependencies in an object-oriented manner. Rather than doing it by importing modules and global states, encode these states in objects and pass those around.
Read up on objects and classes and how to write them in Python; I'd probably start there.
A python module for global parameters - is this good practice?