Skip to main content

A tool for saving your IPython variables to disk.

Project description

Save IPython Variables
======================

You use IPython. It's pretty great. But things happen! Your computer
crashes, your IPython shell crashes (in theory), your computer runs out of
memory and the process becomes unreachable. You can lose your whole session,
and potentially hours of work.

Sure, you can work out of a file, using `%edit` to keep your code on disk, but
the variables that can take hours to build up -- whether it's through querying
databases, scraping the web, or executing long-running algorithms -- can just
vanish.

This is where this module comes into play: `save-ipython-variables` lets you do
just that -- save your global IPython variables to disk easily, and load them
back into the global namespace when you need them again, even in a whole new
IPython session.

Example Usage
-------------
```python
In [1]: from save_ipython_variables import load_all_variables, save_variable

In [2]: data = build_data_dictionary_from_db()

In [3]: save_variable('data', data)

In [4]: save_variable('number', 5)

In [5]: exit()
```
And now, in a new session:
```python
In [1]: from save_ipython_variables import load_all_variables, save_variable

In [2]: load_all_variables()
Loaded the following variables: ['data', 'number']

In [3]: if data:
...: print 'Loaded Successfully!'
Loaded Successfully!
```
You can also choose to load select variables:
```python
In [1]: from save_ipython_variables import load_all_variables, save_variable

In [2]: load_all_variables(['number'])
Loaded the following variables: ['number']

In [3]: number
Out[3]: 5

In [3]: data
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-8-2cd6ee2c70b0> in <module>()
----> 1 data

NameError: name 'data' is not defined
```
As you can see, `number` was successfully loaded, but `data` was ignored.

Details
-------
Each variable is saved to disk in the current directory as
`<variable_name>.pkl`. Variable names are also added to the set
`saved_var_names`, which is saved to disk like all other variables.

Variables are loaded into scope by adding them to the `__builtins__`
dictionary.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

save_ipython_variables-0.0.4.tar.gz (3.1 kB view details)

Uploaded Source

File details

Details for the file save_ipython_variables-0.0.4.tar.gz.

File metadata

File hashes

Hashes for save_ipython_variables-0.0.4.tar.gz
Algorithm Hash digest
SHA256 2765f2277a9476316ddd7393adca5a1a376b163fff6a4361194ee9cbaeb598ae
MD5 fd2cffbd9d9ebf1a8160f587c6d87a5c
BLAKE2b-256 36dfae6ec885db122e5a6da486817e7c315959d9b903ee69cbd7156db62cddf3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page