spyder – clear variable explorer along with variables from memory

Question:

To clear the console we can use the following command –

import subprocess as sp
tmp = sp.call('cls',shell=True)

However, to remove a variable from memory, we often rely upon –

  • using del command
  • removing variable manually by using the drop-down menu in variable explorer

But both of them are variable specific and hence time-consuming. So is there any general command (like clear under MATLAB) to remove a variable from memory and thereafter from Spyder’s Variable Explorer.

Asked By: sync11

||

Answers:

In Spyder, Do following steps

Run

Configuration per file…
Clear all variables before execution [Select Checkbox]

This actually clears variables from previous run of the file. Hope it helps.

enter image description here

Answered By: Karan Kaw

Go to the IPython console in the Spyder IDE and type %reset. It will prompt you to enter (y/n) as the variables once deleted cannot be retrieved. Type ‘y’ and hit enter. That’s it.

Answered By: NKoder

Surfing on the web, I found a hack to solve the annoying problem of clearing the variable explorer every time you want to execute again a script:

def clear_all():
    """Clears all the variables from the workspace of the spyder application."""
    gl = globals().copy()
    for var in gl:
        if var[0] == '_': continue
        if 'func' in str(globals()[var]): continue
        if 'module' in str(globals()[var]): continue

        del globals()[var]
if __name__ == "__main__":
    clear_all()
    # insert here your code

Basically, it consists of executing the function clear_all() just before everything else. It is writing by yourself the same Matlab’s function.
Here the link to the git issue where the solution was proposed.

Answered By: Leos313

As explained in the answer provided by Karan Kaw, there is a setting to delete all the variables, regardless of the script you are workin on.

Do the following (from the drop-downs bar)

> Tools
> Preferences
> Run

and check the Remove all the variables before execution checkbox in the General Setting section. In doing this I use Spyder 3.3.4.

This completion may be in order if you want all the scripts you work on to be executed with the preventive deletion of all the variables. Hope it helps

Answered By: matte

For Spyder v. > 4.0, it is possible to remove the variables just by clicking the "remove all variables" icon at the variable explorer:

enter image description here

Answered By: Javier TG
Categories: questions Tags: ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.