This is exactly how it works, yes. If you import numpy as np in one tab it is now in memory in the single python interpreter instance of Maya. Any tab will reflect this.
If you are testing a module and make changes to it, then you can use the reload() command. import myModule # make changes reload(myModule) There isn't really a clean way to just flat out delete a module, as it can still have remaining references in other areas. You could just say: del myModule, which will kill that global reference. But anything else that imported or used it will still have access to it in memory. On Fri, Jun 15, 2012 at 11:47 AM, Mathew Schwartz <umca...@gmail.com> wrote: > So if im testing a scripts then the only way to remove the variables is to > restart? For the tooltip, the attached images are the example. In one tab > i type "n" it gives me the list of options for "n", in a different tab > "import numpy as np" then I run that, and now anytime i type "n" i get the > "np" option. What if I dont want to be importing that anymore. what if > during testing, I change a module, i thought there was a reload() command > for reloading a module, what if I want to unload it. Does this make more > sense? > > Thanks > > m > > > On Fri, Jun 15, 2012 at 1:20 PM, Justin Israel <justinisr...@gmail.com>wrote: > >> I think the best suggestion, without seeing your code examples, it what I >> mentioned before. Don't do things in the global scope. Its one thing to try >> out tests in the script editor. But when you actually write scripts, >> encapsulate your code in class or function structures. >> >> Beyond that...we need to see something you are actually doing. >> >> >> >> On Fri, Jun 15, 2012 at 9:16 AM, jdob <dobson...@googlemail.com> wrote: >> >>> I don't understand your example - what do you mean by "the cmds option >>> under tooltip"? >>> >>> The script editor's python tabs are all talking to the same python >>> interpreter - there is only one per session. So if you import a module in >>> one tab, it will be there in all of the tabs. >>> >>> -jon >>> >>> >>> On Friday, June 15, 2012 7:39:07 AM UTC-7, Mat wrote: >>>> >>>> Okay I see, >>>> >>>> I think what I am wondering then is if there is a way to clear >>>> everything that was done, such as a global variable. Its not just one >>>> script thats doing it, but the best example I can give is when the tooltip >>>> is activated. Typing "cmd" does not give any options, but if I run "import >>>> maya.cmds as cmds", the even when I create a new python tab, "cmd" brings >>>> up the cmds option. I need to restart to get rid of the cmds option under >>>> tooltip. So the question is, how can restart the python environment >>>> without restarting Maya? >>>> >>>> Thanks >>>> >>>> m >>>> >>>> On Thu, Jun 14, 2012 at 2:42 PM, Justin Israel >>>> <justinisr...@gmail.com>wrote: >>>> >>>>> Maya runs python as a persistant environment. If your script is doing >>>>> things on a global level, then those would continue to live on. Also like >>>>> you said, if you are setting up other global callbacks like scriptJobs or >>>>> attaching to existing UI elements and not cleaning those up, they too >>>>> would >>>>> be a persistant issue. >>>>> >>>>> But yea, we would need to see some more specific examples of what you >>>>> are doing and how you are doing it. Ideally your data structures should be >>>>> bound to instances of classes or die withe the scope of a function. If >>>>> your >>>>> script fails, there shouldn't be anything persistant. Are you using global >>>>> variables in your script? >>>>> >>>>> >>>>> On Thu, Jun 14, 2012 at 9:17 AM, jdob <dobson...@googlemail.com>wrote: >>>>> >>>>>> Hi Mat- >>>>>> >>>>>> Tough to say what the problem is without more info. There should be >>>>>> no need to "clear Mayas memory of things that happened in the script >>>>>> editor" but maybe I'm misunderstanding what you're trying to do. Can you >>>>>> post a short example of your code? Also, can you turn on "Show Stack >>>>>> Trace" (in the script editor's Edit menu) and make it fail again? You >>>>>> should get some useful info if something is failing in python land. >>>>>> >>>>>> >>>>>> -- >>>>>> view archives: >>>>>> http://groups.google.com/**group/python_inside_maya<http://groups.google.com/group/python_inside_maya> >>>>>> change your subscription settings: http://groups.google.com/** >>>>>> group/python_inside_maya/**subscribe<http://groups.google.com/group/python_inside_maya/subscribe> >>>>>> >>>>> >>>>> -- >>>>> view archives: >>>>> http://groups.google.com/**group/python_inside_maya<http://groups.google.com/group/python_inside_maya> >>>>> change your subscription settings: http://groups.google.com/** >>>>> group/python_inside_maya/**subscribe<http://groups.google.com/group/python_inside_maya/subscribe> >>>>> >>>> >>>> -- >>> view archives: http://groups.google.com/group/python_inside_maya >>> change your subscription settings: >>> http://groups.google.com/group/python_inside_maya/subscribe >>> >> >> -- >> view archives: http://groups.google.com/group/python_inside_maya >> change your subscription settings: >> http://groups.google.com/group/python_inside_maya/subscribe >> > > -- > view archives: http://groups.google.com/group/python_inside_maya > change your subscription settings: > http://groups.google.com/group/python_inside_maya/subscribe > -- view archives: http://groups.google.com/group/python_inside_maya change your subscription settings: http://groups.google.com/group/python_inside_maya/subscribe