Skip to main content

an IPython magic for capturing data in YAML into a running IPython kernel.

Build Status pypi

Install

From the command line (or with ! in a notebook cell):

pip install yamlmagic

Enable

Ad-hoc

In the notebook, you can use the %load_ext or %reload_ext line magic.

%reload_ext yamlmagic

Configuration

In your profile’s ipython_kernel_config.py, you can add the following line to automatically load yamlmagic into all your running kernels:

c.InteractiveShellApp.extensions = ['yaml_magic']

Use

The %%yaml cell magic will either act as simple parser:

%%yaml
a_toplevel_key: 1
<IPython.core.display.Javascript object>
{'a_toplevel_key': 1}

which can be accessed by the special last result variable _:

_
{'a_toplevel_key': 1}

Or will update a named variable with the parsed document:

%%yaml x
- a: 1
  b: 2
<IPython.core.display.Javascript object>
x
[{'a': 1, 'b': 2}]

By default, yaml.SafeLoader will be used, which won’t allow the powerful but dangerous (and unportable) `!python/ tags <http://pyyaml.org/wiki/PyYAMLDocumentation#YAMLtagsandPythontypes>`__. If you’d like to use them, provide the -l (or --loader) argument with a BaseLoader subclass available via a local variable…

from yaml import Loader
class FooLoader(Loader):
    # some special things you have built
    pass
%%yaml --loader FooLoader
- a: !!python/float 1
  b: !!python/float 2
<IPython.core.display.Javascript object>
[{'a': 1.0, 'b': 2.0}]

…or dotted-notation path to a loader:

%%yaml --loader yaml.Loader
- a: !!python/float 1
  b: !!python/float 2
<IPython.core.display.Javascript object>
[{'a': 1.0, 'b': 2.0}]

Contribute

Issues and pull requests welcome!

License

yamlmagic is released as free software under the BSD 3-Clause license.

Thank

Release files for yamlmagic 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for yamlmagic 0.2.0
File Size Uploaded
yamlmagic-0.2.0.tar.gz 7.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for yamlmagic 0.2.0
File Interpreter ABI Platform
yamlmagic-0.2.0-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 12.5 kB

Release files / yamlmagic-0.2.0.tar.gz

Download URL yamlmagic-0.2.0.tar.gz
Size 7.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c9a64977dd3f379530127a74a35dfc5b1a5ac82efb9a36d87a182d0c650a7205
BLAKE2b-256 checksum
How to use checksums
19796f0f00b6ff87bb9c2a1227adef728293770c8161e8141101b8faf8b4e344
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / yamlmagic-0.2.0-py2.py3-none-any.whl

Download URL yamlmagic-0.2.0-py2.py3-none-any.whl
Size 5.5 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
a2d405f613b3bdd8004355cb242092a840f2a24a26db1cdbcc867e2004a80d03
BLAKE2b-256 checksum
How to use checksums
bddbd677d565b9048b9003ae6aac3ec34cce9dcc0e9c13bd68289c7c8dde3959
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page